我已经下载了有关国际足球比赛结果的数据集,但我在可视化一件事时遇到了问题。列名称如下:
日期
home_team
away_team
home_score
away_score
比赛
城市(比赛发生地)
国家(比赛发生地)
中立(如果比赛在主队国家/地区之外进行,则为TRUE,否则为FALSE。)
我试图弄清楚分数与比赛时间之间的相关性。为此,我想打印出(然后计数)其中的所有行:
此外,如果你们知道如何在不设置两个单独条件的情况下将它们结合起来,那也很高兴!
如果有人感兴趣,可以在这里找到数据集:https://www.kaggle.com/martj42/international-football-results-from-1872-to-2017
我尝试了以下方法,但是没有用
for row in df:
if df['home_team'] == df['city'] and home_score > away_score:
print (row)
df = pd.read_csv('results.csv')
由于某种原因,True / False是布尔值,所以我将其更改为str
booleandf = df.select_dtypes(include=[bool])
df_str = {True: 'TRUE', False: 'FALSE'}
for column in booleandf:
df['neutral'] = df['neutral'].map(df_str)
打印中立=='FALSE
的所有行df[df['neutral'].str.contains("FALSE")]
遇到错误:解析时出现意外的EOF
答案 0 :(得分:0)
IIUC,这将为您提供要可视化的行。试试吧
List<Object>
答案 1 :(得分:0)
将home_team
与city
进行比较是行不通的,因为一个是国家/地区,另一个是该国家/地区内的城市。您是否要解决计算主场/客场比赛的全球得分的问题?
答案 2 :(得分:0)
您对此太想了。通常,如果在pandas数据框上使用python循环,则说明这样做是错误的。在这种情况下,您可以像这样获得所需的计数:
home_team_win_count = len(df[(df.home_team == df.country) & (df.home_score > df.away_score)])