熊猫:将多标题列的某个级别旋转到行索引中

诺曼纽斯

给我们一个带有多级标题的表:

cols = pd.MultiIndex.from_arrays([['a','a', 'b','b'], [0,1,0,1]], 
                                 names=('I','II'))
df = pd.DataFrame(np.random.rand(3,4),columns=cols)
df.index.name = 'idx' 

I          a                   b
II         0         1         0         1
idx
0    0.851031  0.294414  0.503343  0.081551
1    0.333798  0.965863  0.206981  0.898823
2    0.520647  0.868081  0.571291  0.275164

如何将第一列索引“透视”I到行索引?继续我的示例,我想实现以下目标:

    II          0         1 
I   idx
a   0    0.851031  0.294414  
    1    0.333798  0.965863  
    2    0.520647  0.868081  
b   0    0.503343  0.081551  
    1    0.206981  0.898823  
    2    0.571291  0.275164  

确保了柱具有用于这种操作的适当形状。

您可以将2个呼叫链接到unstack

df.unstack('idx').unstack('II')

II            0         1
I idx                    
a 0    0.406855  0.666815
  1    0.930418  0.204731
  2    0.715580  0.432077
b 0    0.879814  0.278757
  1    0.294891  0.001818
  2    0.453212  0.452945

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章