如何用熊猫融化多索引中的第一级列

时间:2018-06-28 08:41:51

标签: python pandas

我有这个多索引数据框:

df=pd.DataFrame(np.zeros((3,6)))
df.columns=pd.MultiIndex.from_arrays([['a','a','b','b','c','c'],[1,2,1,2,1,2]])
df['a']=10
df['b']=20
df['c']=40

print(df)

Out[10]: 
    a       b       c    
    1   2   1   2   1   2
0  10  10  20  20  40  40
1  10  10  20  20  40  40
2  10  10  20  20  40  40

我想得到这个:

Out[10]: 

   names  1   2
0      a  10  10
1      a  10  10
2      a  10  10
0      b  20  20
1      b  20  20
2      b  20  20
0      c  40  40
1      c  40  40
2      c  40  40

我知道我可以在数据帧中首先将每一列分开,然后进行追加,但是我正在寻找一种更好的方法。

我尝试使用melt命令执行此操作,但是我总是收到错误消息。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

使用unstack

<div>{{article?.title}}</div>