Pandas的rename()函数的主要任务是重命名任何索引、列或行。此方法对于重命名某些选定的列非常有用,因为我们只需要为要重命名的列指定信息。

它主要根据一些映射(字典或Series)或任意函数更改轴标签。函数必须是唯一的,并且应该从1-1。如果标签不包含在字典或Series中,则将保留标签。如果列出了一些额外的标签,它将引发错误。

语法:

DataFrame.rename(mapper=None, index=None, columns=None, axis=None, copy=True, inplace=False, level=None, errors='ignore')  

参数:

  • mapper: 这是要应用于特定轴标签的类似字典函数变换。我们可以使用mapperaxis来指定用mapper、index
  • index: 这是指定轴的替代方法(mapper,axis =0等同于index=mapper)。
  • columns: 这是指定轴的另一种替代方法(mapper,axis =1等同于columns=mapper)。
  • axis: 它是一个intstr值,用于定义用mapper定位的轴。它可以是轴名称('index','columns')或数字。
  • copy: 它是一个布尔值,表示是否复制底层数据。copy的默认值为True。
  • inplace: 它是一个布尔值,检查是否返回新的DataFrame。如果为True,它将更改原始DataFrame。inplace的默认值为True。
  • level: 它是一个intlevel名称值,指定DataFrame具有多级索引的级别。level的默认值为None。
  • errors: 它是ignore, raise,如果我们指定raise值,并且在所选轴中找不到任何标签,则会引发KeyError

返回:

它返回具有重命名轴标签的DataFrame。

示例1: 以下示例重命名了单个列:

import pandas as pd   
# Define a dictionary containing information of employees   
info = {'name': ['Parker', 'Smith', 'William', 'Robert'],   
              'age': [38, 47, 44, 34],   
               'language': ['Java', 'Python', 'JavaScript', 'Python']}   
# Convert dictionary into DataFrame   
info_pd = pd.DataFrame(info)   
# Before renaming columns   
print(info_pd)   
info_pd.rename(columns = {'name':'Name'}, inplace = True)   
# After renaming columns   
print("\nAfter modifying first column:\n", info_pd.columns  

输出:

        name      age     language
0      Parker    38        Java
1      Smith      47       Python
2      William   44       JavaScript
3       Robert    34      Python
After modifying first column:
Index(['Name', 'age', 'language'], dtype='object')

示例2: 以下示例重命名了多个列:

import pandas as pd   
# Define a dictionary containing information of employees   
info = {'name': ['Parker', 'Smith', 'William', 'Robert'],   
              'age': [38, 47, 44, 34],   
               'language': ['Java', 'Python', 'JavaScript', 'Python']}   
# Convert dictionary into DataFrame   
info_pd = pd.DataFrame(info)   
# Before renaming columns   
print(info_pd)   
info_pd.rename(columns = {'name':'Name', 'age':'Age', 'language':'Language'}, inplace = True)   
# After renaming columns   
print(info_pd.columns)  

输出:

      name     age     language
0    Parker    38      Java
1    Smith     47      Python
2   William   44      JavaScript
3   Robert    34    Python
Index(['Name', 'Age', 'Language'], dtype='object')

示例3: 以下示例重命名了特定列的索引:

import pandas as pd  
data = {'Name': ['Smith', 'Parker', 'William'], 'Emp_ID': [101, 102, 103], 'Language': ['Python', 'Java', 'JavaScript']}  
info1 = pd.DataFrame(data)  
print('DataFrame:\n', info1)  
info2 = info.rename(index={0: '#0', 1: '#1', 2: '#2'})  
print('Renamed Indexes:\n', info2)  

输出:

DataFrame:
        Name       Emp_ID   Language
0      Smith       101           Python
1      Parker      102           Java
2      William    103           JavaScript
Renamed Indexes:
        Name       Emp_ID   Language
#0    Smith       101          Python
#1    Parker      102          Java
#2   William     103          JavaScript

标签: Pandas, Pandas教程, Pandas库, Pandas基础, Pandas学习, Pandas使用, Pandas指南, Pandas入门教程, Pandas模块, Pandas数据库, Pandas实战教程, Pandas用法总结, Pandas文档