Skip to main content
 首页 » 编程设计

python之重命名 Pandas 系列中的某些值

2025年05月04日15sky-heaven

我有以下 Pandas 系列:

print(df.head()) 
          Country  Energy Supply Energy Supply per Capita  % Renewable 
0     Afghanistan   3.210000e+08                       10    78.669280 
1         Albania   1.020000e+08                       35   100.000000 
2         Algeria   1.959000e+09                       51     0.551010 
3  American Samoa            NaN                      ...     0.641026 
4         Andorra   9.000000e+06                      121    88.695650 

如何将 Afghanistan 重命名为 Afghanistan_new? 我可以设置索引:

df = df.set_index('Country') 

然后尝试按以下方式重命名国家:

df['Afghanistan'].rename('Afghanistan_renamed') 

但它不起作用。

请您参考如下方法:

如果需要替换index可以使用:

df = df.set_index('Country') 
df = df.rename(index={'Afghanistan':'Afghanistan_renamed'}) 
print (df) 
                     Energy Supply Energy Supply per Capita  % Renewable 
Country                                                                  
Afghanistan_renamed   3.210000e+08                       10    78.669280 
Albania               1.020000e+08                       35   100.000000 
Algeria               1.959000e+09                       51     0.551010 
American Samoa                 NaN                      ...     0.641026 
Andorra               9.000000e+06                      121    88.695650 

和replace专栏:

df['Country'] = df['Country'].replace({'Afghanistan':'Afghanistan_renamed'}) 
df = df.set_index('Country') 
print (df) 
                     Energy Supply Energy Supply per Capita  % Renewable 
Country                                                                  
Afghanistan_renamed   3.210000e+08                       10    78.669280 
Albania               1.020000e+08                       35   100.000000 
Algeria               1.959000e+09                       51     0.551010 
American Samoa                 NaN                      ...     0.641026 
Andorra               9.000000e+06                      121    88.695650