我有以下数据集
df = pd.DataFrame({'A' : ['E1', 'E1', 'E1', 'E2', 'E2'],
'B' : ['R1', 'R1', 'R2', 'R2', 'R2'],
'C' : [100, 100, 300, 250, 250]})
我现在想使用A
和B
作为观察的共享标识符来汇总行。然后,我想计算C
的总和和平均值,并计算观察到的对的次数并将这些值附加到数据帧中。
df = pd.DataFrame({'A' : ['E1', 'E1', 'E2'],
'B' : ['R1', 'R2', 'R2'],
'C_sum' : [200, 300, 500],
'C_avg' : [100, 300, 250],
'count' : [2, 1, 2]})
答案 0 :(得分:1)
将groupby
与agg
一起使用
df.groupby(['A','B']).C.agg(['sum','mean','count']).reset_index()
A B sum mean count
E1 R1 200 100 2
E2 R2 300 300 1
E2 R2 500 250 2