[英]Pandas: pivot a level of a multi-header column into the row index
給我們一個帶有多級標題的表:
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
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.