在Pandas / Python中将MultiIndex列与类似的根名称组合在一起

时间:2017-01-26 17:12:42

标签: python pandas grouping multi-index

我有一个MultiIndex数据框,其顶级列名为:

  

Col1_1 | Col1_2 | Col 2_1 | Col 2_2 | ...... |

我希望将Col1_1与Col1_2结合为Col1。我也可以在创建MultiIndex之前执行此操作,但原始数据更多地被绘制为:

  

Col1_1.aspect1 | Col1_1.aspect 2 | Col1_2.aspect1 | Col1_2.aspect2 | ...... |

其中'aspect1'和'aspect2'成为MultiIndex中的子列。

如果我能澄清任何事情,请告诉我,并提前多多感谢。

Current df

预期结果将两者合并为Sample1;任何数量的方法都可以,包括堆叠/连接数据,输出摘要信息,例如: mean()等。

1 个答案:

答案 0 :(得分:1)

您可以使用groupby并对其应用聚合函数,例如mean。 您必须针对轴1(列)和级别1(较低的多索引列)进行分组。它将对所有样本应用分组。如果这是你想要达到的目的,那就干一算:

df.groupby(level=1, axis=1).mean()