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

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

rename - 语法

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

rename - 参数

  • mapper   - 这是dick-likefunction转换,将应用于特定的轴标签。我们可以使用 mapper axis来指定以 mapper,index和为目标的轴
  • index        -  这是指定轴的替代方法(mapper,axis = 0等于 index = mapper )。
  • columns  -  可以指定轴(映射器,轴= 1等效于 columns = mapper )。
  • axis           -  它是指 int str 值,它定义了mapper所针对的轴。它可以是轴名称("index","columns")或number。
  • copy         -  它是一个用于复制基础数据的布尔值。 copy的默认值为True。
  • inplace    -  它是一个布尔值,并检查是否返回新的DataFrame。如果为true,则会在原始DataFrame中进行更改。 inplace的默认值为True。
  • level         -  如果DataFrame具有多级别索引,则它是指指定级别的 int level name值。 level的默认值为"None"。
  • errors      -  是指ignore,raise,如果我们指定了 raise 值,则如果出现以下任何情况,则会引发 KeyError :在所选轴上找不到标签。

rename - 返回值

它返回带有重命名轴标签的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

这一章你学到了什么?来做个笔记,好记忆不如烂笔头! 如果觉得对您有帮助,麻烦帮分享给您的朋友。

祝学习愉快! (如果觉得不正确,选中要修改的内容->右键->编辑)

点我分享笔记