📜  重命名列 pandas - Python (1)

📅  最后修改于: 2023-12-03 14:58:10.802000             🧑  作者: Mango

重命名列 pandas - Python

在数据处理中,我们经常需要对列名进行修改。Pandas 提供了许多方法来快速地更改列名。在本文中,我们将学习如何使用 Pandas 重命名列。

重命名列名

我们可以使用 rename() 函数来重命名单个列名或多个列名。这个函数接收一个字典作为参数,其中字典的键表示原始列名,字典的值表示新列名。

import pandas as pd

# 创建一个示例数据集
data = {'name': ['Tom', 'Jerry', 'Spike', 'Tyke'],
        'age': [5, 7, 3, 1],
        'gender': ['M', 'M', 'M', 'F']}
df = pd.DataFrame(data)

# 使用 rename() 函数重命名列名
df = df.rename(columns={'name': 'Name', 'age': 'Age', 'gender': 'Gender'})

print(df)

输出结果如下:

    Name  Age Gender
0    Tom    5      M
1  Jerry    7      M
2  Spike    3      M
3   Tyke    1      F

在这个示例中,我们使用 rename() 函数将列 name 重命名为 Name,将列 age 重命名为 Age,将列 gender 重命名为 Gender

重命名部分列名

如果我们只想重命名数据集中的部分列,可以使用 rename() 函数中的 columns 参数。这个参数接收一个函数作为参数,该函数根据当前列名返回新列名。

import pandas as pd

# 创建一个示例数据集
data = {'name': ['Tom', 'Jerry', 'Spike', 'Tyke'],
        'age': [5, 7, 3, 1],
        'gender': ['M', 'M', 'M', 'F']}
df = pd.DataFrame(data)

# 使用 rename() 函数重命名部分列名
df = df.rename(columns=lambda x: x.capitalize() if x in ['name', 'gender'] else x)

print(df)

输出结果如下:

    name  Age Gender
0    Tom    5      M
1  Jerry    7      M
2  Spike    3      M
3   Tyke    1      F

在这个示例中,我们使用 rename() 函数重命名列 name 和列 gender,将它们的首字母大写。我们使用 lambda 表达式作为 columns 参数的值,该表达式检查列名是否在列名列表中,如果是则将首字母大写,否则返回原始列名。

总结

Pandas 中的 rename() 函数是一个非常有用的方法,可以帮助我们快速准确地重命名列名。根据需要调整列名可以使数据更易于理解和操作。