我有一个足球成绩(足球)的数据框(df),然后,我创建了另一个数据框(homeformdf),我想用它来查看每个唯一项的前5个主队结果。 我需要的输出是主队进球总数。
对于homeformdf中的每一行,我想看一下df,并汇总df中的前5个主场比赛“ home_team_goals_count”。
需要将得出的总和作为新列'HG'添加到homeformdf
我的想法是:
这将重复进行直到计数器达到5,然后启动另一个循环以将home_team_name从hometeamdf下移1行,并重复直到最后一行。
我很高兴我可能不会像您想要的那样尝试代码,因此,关于如何最好地解决此问题的建议将不胜感激,因为我正在搜索圈中寻找答案-甚至不知道是否我正在考虑这项权利。
答案 0 :(得分:1)
top_5 = df[['home_team_name', 'home_team_goal_count']].groupby('home_team_name').head(5)
goals_per_home_team = top_5.groupby('home_team_name').sum()
可能有一种方法可以做到这一点,但这是我可以最快地完成的工作。