我有一个具有以下配置的多索引列DataFrame:
Cat_1 Cat_2
sub-cat_1 sub-cat_2 sub-cat_1 sub-cat_2
metric_one 10 20 1 2
metric_two 15 10 3 4我希望取得以下成果:
Cat_1 Cat_2
metric_one sub-cat_1 10 1
sub-cat_2 20 2
metric_two sub-cat_1 15 3
sub-cat_2 10 4 我尝试了一些策略(解栈、堆栈、样本层),但我不知道如何实现这一点。有什么建议吗?
发布于 2018-12-20 12:24:18
对我来说,stack工作得很好,但在列中有必要的MultiIndex:
print (df.columns)
MultiIndex(levels=[['Cat_1', 'Cat_2'], ['sub-cat_1', 'sub-cat_2']],
labels=[[0, 0, 1, 1], [0, 1, 0, 1]])
df1 = df.stack()
print (df1)
Cat_1 Cat_2
metric_one sub-cat_1 10 1
sub-cat_2 20 2
metric_two sub-cat_1 15 3
sub-cat_2 10 4https://stackoverflow.com/questions/53860790
复制相似问题