关于python:如何在pandas df中设置新索引并删除默认索引

How to set new index and remove default index in pandas df

我已经在图片中附加了数据框。
在df中,subVoyageID是默认索引,我试图删除subvoyageID旁边的空白行,以便所有列名都在同一行中对齐,但是我无法这样做。

由于subVoyageID是默认索引,因此我将数据复制到新列" svid"中,并将索引重置为新列" svid",(请参见下面的代码和图片)

1
2
3
    df["SVID"] = df.index
    df.set_index('SVID')
    df

原始df

orig df

结果df

new df

现在如何摆脱第一列即默认索引,因为df.info()显示了从x-max到SVID的5列; 还是有其他方法可以将所有列标签对齐为一行。 谢谢你的帮助。


使用reset_index将索引值转换为列,并在必要时将rename列转换为:

1
df = df.reset_index().rename(columns={'subVoyageID':'SVID'})


这是因为subVoyageID不是列,而是您的索引。 只需使用reset_index()使其成为实际列即可。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
>>> df

         a  b  c
myindex        
0        0  1  2
1        3  4  5
2        6  7  8

>>> df.reset_index().rename(columns={df.index.name: 'not my index'})

   not my index  a  b  c
0             0  0  1  2
1             1  3  4  5
2             2  6  7  8