我有一个像熊猫一样的数据帧
id cat v1 v2
36 A 1 2
36 B 3 4
36 C 5 6
97 A 7 8
97 B 9 10
97 C 11 12
Run Code Online (Sandbox Code Playgroud)
我找到了set_index(),unstack()我得到了
df.set_index(['code', 'cat']).unstack()
v1 v2
code A B C A B C
id
36 1 3 5 2 4 6
97 7 9 11 8 10 12
Run Code Online (Sandbox Code Playgroud)
但我想要
A B C
code v1 v2 v1 v2 v1 v2
id
36 1 2 3 4 5 6
97 7 8 9 10 11 12
Run Code Online (Sandbox Code Playgroud)
如何交换列轴中的水平?
既然你提到了 swaplevel
df.set_index(['id', 'cat']).unstack().swaplevel(0,1,axis=1).sort_index(axis=1)
Out[765]:
cat A B C
v1 v2 v1 v2 v1 v2
id
36 1 2 3 4 5 6
97 7 8 9 10 11 12
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
162 次 |
| 最近记录: |