我有一个简单的任务,我想知道是否有更好/更有效的方法.我有一个如下所示的数据框:
Group score Count
0 A 5 100
1 A 1 50
2 A 3 5
3 B 1 40
4 B 2 20
5 B 1 60
Group score Count TotalCount
0 A 5 100 155
1 A 1 50 155
2 A 3 5 155
3 B 1 40 120
4 B 2 20 120
5 B 1 60 120
我这样做的方式是:
Grouped=df.groupby('Group')['Count'].sum().reset_index()
Grouped=Grouped.rename(columns={'Count':'TotalCount'})
df=pd.merge(df, Grouped, on='Group', how='left')
谢谢您的帮助.
解决方法:
df['TotalCount'] = df.groupby('Group')['Count'].transform('sum')
其他一些选项将在here中讨论.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。