1
,我有以下数据:GROUPBY和金额与大熊猫的某些列,而包括其他列也
import pandas as pd
x4 = pd.DataFrame({"ID": [101,101, 102, 103, 104, 105],
"Prob": [1, 1,1, 1, 1, 1],
"Ef": [0,2, 0, 0, 0.25, 0.29],
"W": [2, 2,3, 4, 5, 6],
"EC": [0, 0,0, 0, 1.6, 2],
"Rand": [11, 12,12, 13, 14, 15]})
我想获得sum(Prob * Ef)
by ID
,然后只保留列ID
,列同sum
,EC
列和W
列。
所以在最后我想有这样的:
ID sum_column EC W
1: 101 2.00 0.0 2
2: 101 2.00 0.0 2
3: 102 0.00 0.0 3
4: 103 0.00 0.0 4
5: 104 0.25 1.6 5
6: 105 0.29 2.0 6
我已经试过这样:x4.loc[:, ['EC','W','ID','Prob','Ef']].groupby('ID').sum(Prob*Ef)
不过,这并不乘以列工作
它的工作原理。对于我的信息,如果不是'sum(Prob * Ef)',我想要'sum(Prob/Ef)'或'sum(Prob-Ef)'或'sum(Prob + Ef)',那么像mult '那样做? – quant
是的,使用'div','sub','add'。 – jezrael