如何更改NaN标头的名称

BEA*_*Ast 3 python header dataframe pandas

我目前正在使用数据框,并且我将它们堆叠以实现特定格式。我有一个问题,我正在尝试更改标题的名称,但它不起作用(通过使用..rename(columns = {'NaN'='type',inplace = True),同一件事我试图更改列“ 6”到另一个的名称,具有与上述相同的原理。

这里:

                                               NaN Quantity
6                                                                 
01/06                       KULUTUS - CONSUMPTION  8976.27     
01/06  TEOLLISUUSKULUTUS - INDUSTRIAL CONSUMPTION  4121.36    
01/06             MUU KULUTUS - OTHER CONSUMPTION  4854.91
Run Code Online (Sandbox Code Playgroud)

jez*_*ael 6

我认为您需要renamedictIndex.fillna

df = df.rename(columns={np.nan: 'type'})
Run Code Online (Sandbox Code Playgroud)
df.columns = df.columns.fillna('type')
Run Code Online (Sandbox Code Playgroud)

样品:

df = pd.DataFrame([[1,4]], columns=[np.nan, 'a'])
print (df)
   NaN  a
0    1  4

print (df.columns.tolist())
[nan, 'a']

df1 = df.rename(columns={np.nan: 'type'})
print (df1)
   type  a
0     1  4
Run Code Online (Sandbox Code Playgroud)
df.columns = df.columns.fillna('type')
print (df)
   type  a
0     1  4
Run Code Online (Sandbox Code Playgroud)

  • 在 pandas 0.23 中,第一种方法不适用于重命名索引值,但是第二种方法可以。仍然对如何使第一种方法起作用感到好奇。 (2认同)