我希望按列A进行分组,并对C列求和,并将结果立即返回到数据框中。我知道我需要使用groupby,而且我知道我需要使用sum,但我无法弄清楚如何让这些函数无缝地交互并在一行代码中。
有无
A B C
0 x text 3
1 x text 7
2 y text 5
要
A B C D
0 x text 3 10
1 x text 7 10
2 y text 5 5
答案 0 :(得分:3)
在groubpy
上致电transform
,将汇总列添加回原来的df:
In [28]:
df['D'] = df.groupby('A')['C'].transform('sum')
df
Out[28]:
A B C D
0 x text 3 10
1 x text 7 10
2 y text 5 5
transform
返回一个系列,其索引与原始df对齐,因此您可以将其添加为新列