【发布时间】:2023-03-16 00:42:01
【问题描述】:
我希望在数据框中创建一个新列,以指示比赛是以主场胜利、客场胜利还是平局结束。
这是我目前使用的代码:
for value in df2:
if value in df2['home_goals'] > df2['away_goals']:
df2['result'] = 'H'
elif value in df2['home_goals'] < df2['away_goals']:
df2['result'] = 'A'
else:
df2['result'] = 'D'
这是输出。
Home Team Away Team home_goals away_goals result
Season
2018-2019 Man Utd Leicester 2 1 D
2018-2019 Newcastle Spurs 1 2 D
2018-2019 Bournemouth Cardiff 2 0 D
2018-2019 Fulham Crystal Palace 0 2 D
2018-2019 Huddersfield Chelsea 0 3 D
正如您所看到的那样,在这种情况下,主队或客队获胜,而是将所有结果显示为平局。
谁能告诉我我哪里出错了?
谢谢
【问题讨论】:
-
你能提供一些数据吗?
dataframe.head(10)之类的东西很好分析 -
感谢已经尝试了其中的一些并解决了这个问题。非常感谢您的帮助!
标签: python python-3.x pandas dataframe for-loop