按聚合函数分组进行乘法

时间:2019-12-03 10:30:53

标签: pandas group-by pandas-groupby aggregate-functions

我想聚合3个数据框,而不是将它们加在一起。我想乘以3。有办法吗?

df=result.groupby(['name']).agg({'A':'sum','B':'sum'})

df1

      A  B   
tim   1  5
emma  3  7

df2

     A  B
tim  1  8
emma 1  2

结果

     A  B
tim  2  13
emma 4  9

我不想将两者相加,而是将它们相乘:

     A  B
tim  1  40
emma 12 18

1 个答案:

答案 0 :(得分:0)

使用GroupBy.prod

df=result.groupby(['name']).agg({'A':'prod','B':'prod'})

如果需要还可以加入他们:

df = pd.concat([df1, df2]).groupby('name', as_index=False).prod()