【发布时间】:2016-12-23 04:07:29
【问题描述】:
如果我有一个简单的数据框:
print(a)
one two three
0 A 1 a
1 A 2 b
2 B 1 c
3 B 2 d
4 C 1 e
5 C 2 f
我可以通过发出以下命令轻松地在行上创建多索引:
a.set_index(['one', 'two'])
three
one two
A 1 a
2 b
B 1 c
2 d
C 1 e
2 f
是否有类似的简单方法可以在列上创建多索引?
我想结束:
one A B C
two 1 2 1 2 1 2
0 a b c d e f
在这种情况下,创建行多索引然后转置它会非常简单,但在其他示例中,我希望在行和列上都创建多索引。
【问题讨论】:
-
看起来 a.pivot(index='one', columns='two', values='three') 越来越接近我想要的(从 df 中提取信息并将它们变成列),虽然我还没有完全弄清楚如何制作多索引。
-
我认为您不想“在列上设置多索引”,我认为您想在行上设置它,然后将行转置为列?请编辑您的问题以使其更清楚
标签: python pandas dataframe transpose multi-index