📅  最后修改于: 2020-10-29 02:14:12             🧑  作者: Mango
Pandas 的rename()函数的主要任务是重命名任何索引,列或行。此方法对于重命名某些选定的列很有用,因为我们只需要为要重命名的列指定信息。
它主要根据一些映射(dict或Series)或任意函数更改轴标签。该函数必须唯一,范围为1到-1。如果字典或系列中未包含标签,则会保留标签。如果列出一些额外的标签,它将引发错误。
DataFrame.rename(mapper=None, index=None, columns=None, axis=None, copy=True, inplace=False, level=None, errors='ignore')
mapper
:这是类似于dict或函数的转换,将应用于特定的轴标签。我们可以使用mapper或axis来指定mapper,index和columns
:指定轴是一种替代方法(映射器,轴= 1等效于column = mapper )。copy
:它是一个布尔值,用于复制基础数据。副本的默认值为True。errors
:表示忽略,抬高如果我们指定了抬高值,则在所选轴中未找到任何标签时,它将引发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