问题描述
我有一个包含两个级别的多索引的熊猫系列。我想将此数据转换为常规数据帧,其中多索引的第一级指定索引,多索引的第二级指定列名。
A B
0 J0 value
J1 value
J2 value
1 J0 value
J1 value
J2 value
我想从上面的情况转到下面的情况,它涉及一个相对较大的数据集,A 级有数千个条目,B 级有数百个条目。
J0 J1 J2
0 value value value
1 value value value
我确实看到了用循环来做到这一点的可能性,但这将意味着显着的性能损失。我想知道是否有一些更高效的方法。
非常感谢!
解决方法
假设您的 dataframe
存储在名为 'df'
的变量中
现在:-
df.index.names=[None,None]
df.columns=['']
只需使用 unstack()
方法:-
df=df.unstack()
你会得到你想要的输出