pro*_*der 2 python crosstab scipy pandas statsmodels
我想使用第三列来加权熊猫交叉表中的结果。
例如,以下内容:
import pandas as pd
df = pd.DataFrame({'A': ['foo', 'bar', 'foo', 'bar', 'bar'],
'B': [1, 1, 0, 0, 0],
'weight': [2, 3, 4, 5, 6]})
print(pd.crosstab(df.A, df.B))
Run Code Online (Sandbox Code Playgroud)
结果是:
B 0 1
A
bar 2 1
foo 1 1
Run Code Online (Sandbox Code Playgroud)
我想要的结果是:
B 0 1
A
bar 11 3
foo 4 2
Run Code Online (Sandbox Code Playgroud)
您可以使用以下aggfunc参数为交叉表提供自定义聚合函数:
pd.crosstab(df.A, df.B, df.weight, aggfunc = sum)
B 0 1
A
bar 11 3
foo 4 2
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2416 次 |
| 最近记录: |