将行重塑为pandas数据帧中的列

Ped*_*roA 7 python python-3.x pandas

在熊猫中如何从一个:

a = pd.DataFrame({'foo': ['m', 'm', 'm', 's', 's', 's'],
                    'bar': [1, 2, 3, 4, 5, 6]})
>>> a
   bar foo
0    1   m
1    2   m
2    3   m
3    4   s
4    5   s
5    6   s
Run Code Online (Sandbox Code Playgroud)

到b:

b = pd.DataFrame({'m': [1, 2, 3],
                    's': [4, 5, 6]})
>>> b
   m  s
0  1  4
1  2  5
2  3  6
Run Code Online (Sandbox Code Playgroud)

我在其他答案中尝试过解决方案,例如这里这里,但似乎没有人做我想要的.

基本上,我想用列交换行并删除索引,但是怎么做呢?

piR*_*red 5

a.set_index(
    [a.groupby('foo').cumcount(), 'foo']
).bar.unstack()
Run Code Online (Sandbox Code Playgroud)