我有一个包含分类属性的数据框,其中索引包含重复项。我正在尝试找到每个可能的索引和属性组合的总和。
x = pd.DataFrame({'x':[1,1,3,3],'y':[3,3,5,5]},index=[11,11,12,12])
y = x.stack()
print(y)
print(y.groupby(level=[0,1]).sum())
输出
11 x 1
y 3
x 1
y 3
12 x 3
y 5
x 3
y 5
dtype: int64
11 x 1
y 3
x 1
y 3
12 x 3
y 5
x 3
y 5
dtype: int64
堆栈和按总和分组是一样的。
但是,我期望的是
11 x 2
11 y 6
12 x 6
12 y 10
编辑2:
x = pd.DataFrame({'x':[1,1,3,3],'y':[3,3,5,5]},index=[11,11,12,12])
y = x.stack().groupby(level=[0,1]).sum()
print(y.groupby(level=[0,1]).sum())
输出:
11 x 1
y 3
x 1
y 3
12 x 3
y 5
x 3
y 5
dtype: int64
编辑3:已提交问题报告 https://github.com/pydata/pandas/issues/10417