计算熊猫的加权平均groupby

问题描述

我有一个看起来像这样的数据框:

pd.DataFrame({'A': ['C1','C1','C2','C2'],'W': [0.2,0.1,0.5,0.3,0.4,0.7],'Y': [2,4,3,2,3]})

    A    W  Y
0  C1  0.2  2
1  C1  0.1  0
2  C1  0.5  4
3  C1  0.3  3
4  C2  0.4  2
5  C2  0.3  2
6  C2  0.7  3

我想计算每个组的加权平均值,并在结果中添加一列。

W =体重

Y =值

结果数据框应如下图所示

    A    W  Y   result
0  C1  0.2  2   3.3
1  C1  0.1  0   3.3
2  C1  0.5  4   3.3
3  C1  0.3  3   3.3
4  C2  0.4  2   3.5
5  C2  0.3  2   3.5
6  C2  0.7  3   3.5

我想用1行代码(无功能)来实现。

解决方法

在获得重量和价值的乘积之前,尝试使用undefined

transform