pandas dataframe重命名列名

pandas dataframe重命名列名

参考:pandas dataframe rename column

在数据分析过程中,我们经常需要对数据进行清洗和整理,而对列名的重命名就是其中一个常见的操作。在pandas库中,我们可以使用rename()函数来实现这个功能。本文将详细介绍如何使用pandas dataframe的rename()函数来重命名列名,并提供了多种示例代码供读者参考。

1. 基本用法

在pandas中,我们可以使用rename()函数来重命名列名。这个函数的基本语法如下:

df.rename(columns={'old_name': 'new_name'}, inplace=True)

其中,’old_name’是原来的列名,’new_name’是新的列名,inplace参数决定了是否在原地修改数据。

下面是一个简单的示例:

import pandas as pd

data = {'Name': ['Tom', 'Nick', 'John', 'Tom'],
        'Age': [20, 21, 19, 18],
        'Email': ['tom@pandasdataframe.com', 'nick@pandasdataframe.com', 'john@pandasdataframe.com', 'tom2@pandasdataframe.com']}

df = pd.DataFrame(data)

df.rename(columns={'Name': 'FirstName', 'Age': 'AgeInYears'}, inplace=True)
print(df)

Output:

pandas dataframe重命名列名

2. 使用字典进行批量重命名

如果我们需要重命名多个列,可以使用字典来进行批量操作。字典的键是原来的列名,值是新的列名。

import pandas as pd

data = {'Name': ['Tom', 'Nick', 'John', 'Tom'],
        'Age': [20, 21, 19, 18],
        'Email': ['tom@pandasdataframe.com', 'nick@pandasdataframe.com', 'john@pandasdataframe.com', 'tom2@pandasdataframe.com']}

df = pd.DataFrame(data)

df.rename(columns={'Name': 'FirstName', 'Age': 'AgeInYears', 'Email': 'EmailAddress'}, inplace=True)
print(df)

Output:

pandas dataframe重命名列名

3. 使用函数进行列名重命名

我们也可以使用函数来进行列名的重命名。这在需要对列名进行一些复杂操作时非常有用。

import pandas as pd

data = {'Name': ['Tom', 'Nick', 'John', 'Tom'],
        'Age': [20, 21, 19, 18],
        'Email': ['tom@pandasdataframe.com', 'nick@pandasdataframe.com', 'john@pandasdataframe.com', 'tom2@pandasdataframe.com']}

df = pd.DataFrame(data)

df.rename(columns=lambda x: x.lower(), inplace=True)
print(df)

Output:

pandas dataframe重命名列名

4. 使用rename_axis()函数重命名列索引

除了使用rename()函数重命名列名,我们还可以使用rename_axis()函数来重命名列索引。

import pandas as pd

data = {'Name': ['Tom', 'Nick', 'John', 'Tom'],
        'Age': [20, 21, 19, 18],
        'Email': ['tom@pandasdataframe.com', 'nick@pandasdataframe.com', 'john@pandasdataframe.com', 'tom2@pandasdataframe.com']}

df = pd.DataFrame(data)

df.rename_axis("ID", axis='rows', inplace=True)
df.rename_axis("Info", axis='columns', inplace=True)
print(df)

Output:

pandas dataframe重命名列名

5. 使用set_axis()函数重命名列名

我们还可以使用set_axis()函数来重命名列名。这个函数的基本语法如下:

import pandas as pd

data = {'Name': ['Tom', 'Nick', 'John', 'Tom'],
        'Age': [20, 21, 19, 18],
        'Email': ['tom@pandasdataframe.com', 'nick@pandasdataframe.com', 'john@pandasdataframe.com', 'tom2@pandasdataframe.com']}

df = pd.DataFrame(data)

df.set_axis(['new_name1', 'new_name2', 'new_name3'], axis=1, inplace=True)
print(df)

下面是一个简单的示例:

import pandas as pd

data = {'Name': ['Tom', 'Nick', 'John', 'Tom'],
        'Age': [20, 21, 19, 18],
        'Email': ['tom@pandasdataframe.com', 'nick@pandasdataframe.com', 'john@pandasdataframe.com', 'tom2@pandasdataframe.com']}

df = pd.DataFrame(data)

df.set_axis(['FirstName', 'AgeInYears', 'EmailAddress'], axis=1, inplace=True)
print(df)

总结以上,pandas dataframe提供了多种重命名列名的方法,可以根据实际需要选择合适的方法。希望本文能对你有所帮助。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程