📜  pandas 重命名列值字典 - Python (1)

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

pandas 重命名列值字典 - Python

在数据处理过程中,我们经常需要对DataFrame或Series中的列值进行重命名。在Python中使用pandas库,可以通过字典来实现重命名列值的操作。本文将向您介绍如何使用pandas库中的replace()函数,结合字典,来重命名DataFrame或Series中的列值。

准备工作

首先,我们需要安装并导入pandas库:

!pip install pandas
import pandas as pd

接下来,我们创建一个示例DataFrame:

data = {'name': ['Alice', 'Bob', 'Charlie'],
        'age': [25, 30, 35],
        'city': ['New York', 'San Francisco', 'Los Angeles']}
df = pd.DataFrame(data)
df

输出结果为:

| | name | age | city | | -- | ------- | --- | ------------- | | 0 | Alice | 25 | New York | | 1 | Bob | 30 | San Francisco | | 2 | Charlie | 35 | Los Angeles |

使用字典重命名列值

要使用字典重命名DataFrame或Series中的列值,我们可以使用replace()函数。该函数需要一个字典作为参数,其中键表示旧列值,值表示新列值。

重命名DataFrame中的列值

假设我们想将城市的列值"New York"重命名为"NY","San Francisco"重命名为"SF","Los Angeles"重命名为"LA"。我们创建一个重命名字典city_mapping,然后将其传递给replace()函数来完成重命名操作。

city_mapping = {"New York": "NY",
                "San Francisco": "SF",
                "Los Angeles": "LA"}

df_replace = df.replace({"city": city_mapping})
df_replace

输出结果为:

| | name | age | city | | -- | ------- | --- | ---- | | 0 | Alice | 25 | NY | | 1 | Bob | 30 | SF | | 2 | Charlie | 35 | LA |

在上面的示例中,replace()函数用重命名字典city_mapping替换了DataFrame中的"city"列值。

重命名Series中的列值

要重命名Series中的列值,我们使用类似的方法。首先,将Series转换为DataFrame,然后使用replace()函数进行重命名。

series = pd.Series(['New York', 'San Francisco', 'Los Angeles'])
series_replace = pd.DataFrame(series, columns=['city'])
series_replace = series_replace.replace({"city": city_mapping})
series_replace

输出结果为:

| | city | | -- | ---- | | 0 | NY | | 1 | SF | | 2 | LA |

上面的示例中,我们将Series转换为带有"city"列的DataFrame,并使用replace()函数重命名了"city"列值。

总结

本文介绍了如何使用pandas库中的replace()函数,结合字典,来重命名DataFrame或Series中的列值。通过传递一个重命名字典,我们可以将DataFrame或Series中的旧列值替换为新列值。再也不用手动一个个修改,大大简化了重命名操作的过程。