我有一个数据框:
id life_day value
a1 1 10
a1 2 20
a1 3 10
a1 4 5
a1 5 5
a1 6 1
b2 1 7
b2 3 11
b2 4 10
b2 5 20
我想对每个 id 和 life_day 的值求和。所以想要的结果是:
id life_day value
a1 1 10
a1 2 30
a1 3 40
a1 4 45
a1 5 50
a1 6 51
b2 1 7
b2 3 18
b2 4 28
b2 5 48
`
如何做到这一点?我试过df.groupby('id').agg({'value': 'sum'})
但会带来错误的结果。它不进行求和。
最佳答案
尝试,变换
+ cumsum
df['value'] = df.groupby(['id'])['value'].transform('cumsum')
id life_day value
0 a1 1 10
1 a1 2 30
2 a1 3 40
3 a1 4 45
4 a1 5 50
5 a1 6 51
6 b2 1 7
7 b2 3 18
8 b2 4 28
9 b2 5 48
关于python - 如何对其他列中的每个值求和组中的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70151192/