我有以下Pandas data frame:
print(df)
head1 head2 head3
bar 32 3 100
bix 22 NaN NaN
foo 11 1 NaN
qux NaN 10 NaN
xoo NaN 2 20
我想要做的是将行名bar, bix, ...
转换为这样的列
最后我有这样的事情:
newhead head1 head2 head3
0 bar 32 3 100
1 bix 22 NaN NaN
2 foo 11 1 NaN
3 qux NaN 10 NaN
4 xoo NaN 2 20
我怎样才能做到这一点?
答案 0 :(得分:26)
df.index.name = 'newhead'
df.reset_index(inplace=True)
产量
newhead head1 head2 head3
0 bar 32 3 100
1 bix 22 NaN NaN
2 foo 11 1 NaN
3 qux NaN 10 NaN
4 xoo NaN 2 20
答案 1 :(得分:1)
您可以一行完成。
df.rename_axis("newhead").reset_index()