在 Python 中使用 groupby 计算目标最多的团队

乘风 python 199

原文标题Calculating the team with the most goals using groupby in Python

我有一个英超联赛数据集:

enter image description here

我想找出自 1993 年以来哪支球队的进球数最多。我试图按HomeTeamFTGH(全场主场进球)对数据进行分组,但结果如下:

home_goals = df.groupby(['HomeTeam', 'FTHG']).sum()

enter image description here

有没有另一种方法来计算球队的总进球数,无论是主场还是客场?

原文链接:https://stackoverflow.com//questions/71465965/calculating-the-team-with-the-most-goals-using-groupby-in-python

回复

我来回复
  • jezrael的头像
    jezrael 评论

    你可以分别聚合HomeTeamAwayTeam,然后用Series.add求和:

    home_goals = df.groupby('HomeTeam')['FTHG'].sum()
    away_goals = df.groupby('AwayTeam')['FTAG'].sum() 
    
    df = (home_goals.add(away_goals, fill_value=0).rename_axis('Team')
                    .reset_index(name='Goals')
                    .sort_values('Goals', ignore_index=True))
    
    2年前 0条评论