我有一个熊猫数据框df
:
column1 column2 column3
-----------------------
a0 0.25 x1
a0 0.05 x3
a0 0.70 x2
a1 0.25 x3
a1 0.70 x2
a1 0.05 x1
尝试像下面这样重塑df
:
column3 a0 a1
---------------------
x1 0.25 0.05
x2 0.7 0.70
x3 0.05 0.25
尝试:
df.set_index([df.groupby('column3').cumcount(), 'column3']).column2.unstack()
答案 0 :(得分:1)
使用-
df.pivot(values='column2', index='column3', columns='column1')
输出
column1 a0 a1
column3
x1 0.25 0.05
x2 0.70 0.70
x3 0.05 0.25
使用rename_axis()
重置索引-
df.pivot(values='column2', index='column3', columns='column1').rename_axis(None)
column1 a0 a1
x1 0.25 0.05
x2 0.70 0.70
x3 0.05 0.25