📜  如何使用 panda 对象重命名列 - Python (1)

📅  最后修改于: 2023-12-03 15:08:23.243000             🧑  作者: Mango

如何使用 panda 对象重命名列 - Python

在进行数据分析的过程中,数据集中的列名可能不太合适,需要使用其他的列名来更好地表达数据。pandas 提供了丰富的函数来帮助数据科学家去更改列名。本文将介绍如何使用 pandas 对象重命名列名。

使用 rename() 方法

pandas.DataFrame.rename() 方法可以接受多种类型的参数来进行列名的更改,参数有对列名的映射、对列名的函数映射和列表,下面介绍几种常用的方法。

通过字典来重命名列名

下面例子中我们使用花园里的不同种类的花朵来作为例子。

import pandas as pd
data = {'Rose': [1, 2, 3], 'Lily': [4, 5, 6], 'Orchid': [7, 8, 9]}
df = pd.DataFrame(data)

# 使用字典来将列名 Rose 重命名为 Hydrangea
df.rename(columns={'Rose': 'Hydrangea'}, inplace=True)

print(df)

输出:

   Hydrangea  Lily  Orchid
0          1     4       7
1          2     5       8
2          3     6       9

可以看到,字典的键是原来的列名,值是新的列名。

通过函数来重命名列名

函数可以将列名转换为新的列名,下面例子中将所有的列名转换为大写字母。

import pandas as pd
data = {'Rose': [1, 2, 3], 'Lily': [4, 5, 6], 'Orchid': [7, 8, 9]}
df = pd.DataFrame(data)

# 定义重命名函数
def to_upper(text):
    return text.upper()

# 使用函数将列名转换为大写字母
df.rename(columns=to_upper, inplace=True)

print(df)

输出:

   ROSE  LILY  ORCHID
0     1     4       7
1     2     5       8
2     3     6       9
通过列表来重命名列名

使用一个列表来作为新的列名,下面例子中,将新的列名添加到列表中。

import pandas as pd
data = {'Rose': [1, 2, 3], 'Lily': [4, 5, 6], 'Orchid': [7, 8, 9]}
df = pd.DataFrame(data)

# 使用列表将列名重新命名
df.columns = ['Flower1', 'Flower2', 'Flower3']

print(df)

输出:

   Flower1  Flower2  Flower3
0        1        4        7
1        2        5        8
2        3        6        9
使用 set_axis() 方法

set_axis() 函数可以帮助我们快速地重命名列名,下面代码可以实现对列名的重命名。

import pandas as pd
data = {'Rose': [1, 2, 3], 'Lily': [4, 5, 6], 'Orchid': [7, 8, 9]}
df = pd.DataFrame(data)

# 使用 set_axis() 函数对列名进行重命名
df.set_axis(['Flower1', 'Flower2', 'Flower3'], axis=1, inplace=True)

print(df)

输出:

   Flower1  Flower2  Flower3
0        1        4        7
1        2        5        8
2        3        6        9
总结

本文介绍了如何使用 pandas 对象重命名列名,列名的更改可以通过字典、函数、列表和 set_axis() 函数来实现。在数据分析的过程中,有时需要更好地表达数据,更改列名可以让数据更加直观明了。