📅  最后修改于: 2023-12-03 15:00:24.318000             🧑  作者: Mango
在Pandas DataFrame中更改列名是一项非常有用的任务。在这里,我们将使用rename()函数更改DataFrame的列名。
我们将使用以下示例数据来演示如何重命名Pandas DataFrame的列名。
import pandas as pd
data = {'name':['Alice', 'Bob', 'Charlie', 'David', 'Emily'],
'age':[25, 32, 18, 47, 22],
'country':['USA', 'England', 'Canada', 'USA', 'Canada']}
df = pd.DataFrame(data)
这将创建以下DataFrame:
| | name | age | country | |---:|:---------|------:|:----------| | 0 | Alice | 25 | USA | | 1 | Bob | 32 | England | | 2 | Charlie | 18 | Canada | | 3 | David | 47 | USA | | 4 | Emily | 22 | Canada |
我们可以使用rename()函数来更改DataFrame的列名。在下面的示例中,我们将更改“name”列的新名称为“姓名”,将“age”列的新名称为“年龄”,将“country”列的新名称更改为“国家”。
df = df.rename(columns={'name':'姓名', 'age':'年龄', 'country':'国家'})
运行上述代码后,DataFrame的列名将如下所示:
| | 姓名 | 年龄 | 国家 | |---:|:----------|-------:|:-----------| | 0 | Alice | 25 | USA | | 1 | Bob | 32 | England | | 2 | Charlie | 18 | Canada | | 3 | David | 47 | USA | | 4 | Emily | 22 | Canada |
我们还可以使用lower()或upper()函数将DataFrame的列名转换为小写或大写。在下面的示例中,我们将所有列名转换为小写:
df.columns = df.columns.str.lower()
运行上述代码后,DataFrame的列名将如下所示:
| | name | age | country | |---:|:----------|-------:|:------------| | 0 | Alice | 25 | USA | | 1 | Bob | 32 | England | | 2 | Charlie | 18 | Canada | | 3 | David | 47 | USA | | 4 | Emily | 22 | Canada |
还可以使用inplace参数来实现修改传递给rename()的DataFrame。默认情况下,inplace参数为False,它将返回一个新DataFrame。但是,如果我们将inplace参数设置为True,则原始DataFrame将被修改。
df.rename(columns={'name':'姓名', 'age':'年龄', 'country':'国家'}, inplace=True)
现在,DataFrame的列名将如下所示:
| | 姓名 | 年龄 | 国家 | |---:|:--------|-------:|:-----------| | 0 | Alice | 25 | USA | | 1 | Bob | 32 | England | | 2 | Charlie | 18 | Canada | | 3 | David | 47 | USA | | 4 | Emily | 22 | Canada |
通过使用rename()函数,我们可以更改Pandas DataFrame的列名。我们还学习了如何将列名转换为小写或大写,并学习了如何使用inplace参数直接修改DataFrame。这些技术在数据清洗和预处理期间非常有用。