Pandas 如何重命名特定的列
在Pandas中,有时候我们需要修改DataFrame中的一些列/行/索引的名称,以满足我们的需求。这篇文章将着重介绍如何重命名DataFrame中的特定列。
阅读更多:Pandas 教程
1. Pandas重命名特定列方法一:使用rename函数
Pandas提供了rename函数,可以重命名DataFrame或Series中的列名。我们可以使用字典或函数来实现重命名。
假设有以下的DataFrame:
import pandas as pd
df = pd.DataFrame({'First_name': ['John', 'Mickey'], 'Last_name': ['Doe', 'Mouse'], 'Age': [32, 37]})
print(df.head())
输出:
First_name Last_name Age
0 John Doe 32
1 Mickey Mouse 37
现在我们想把”First_name”列重命名为”Name”,我们可以使用rename函数来实现:
df.rename(columns={"First_name": "Name"}, inplace=True)
print(df.head())
这里使用了字典方式来实现重命名。我们可以看到,”First_name”列已经被重命名为”Name”。
输出:
Name Last_name Age
0 John Doe 32
1 Mickey Mouse 37
2. Pandas重命名特定列方法二:使用set_axis函数
除了使用rename函数之外,还可以使用set_axis函数来实现重命名。
比如,我们想把”Last_name”列重命名为”Surname”,我们可以使用set_axis函数来实现:
df.set_axis(['Name', 'Surname', 'Age'], axis=1, inplace=True)
print(df.head())
这里使用了set_axis函数来重命名列。我们可以看到,”Last_name”列已经被重命名为”Surname”。
输出:
Name Surname Age
0 John Doe 32
1 Mickey Mouse 37
3. Pandas重命名特定列方法三:使用rename_axis函数
我们还可以使用rename_axis函数来重命名列的名称。
比如,我们想把所有列的名称转成大写,我们可以使用rename_axis函数来实现:
df.rename_axis(str.upper, axis='columns', inplace=True)
print(df.head())
这里使用了rename_axis函数来重命名列。我们可以看到,所有列的名称都转成了大写。
输出:
NAME SURNAME AGE
0 John Doe 32
1 Mickey Mouse 37
4. Pandas重命名特定列方法四:使用columns属性
最后,我们还可以通过直接修改DataFrame的columns属性来实现重命名。
比如,我们想把”AGE”列名改成”Years”,我们可以使用columns属性来实现。
df.columns = ['Name', 'Surname', 'Years']
print(df.head())
这里直接通过修改DataFrame的columns属性来实现重命名。我们可以看到,”Age”列已经被重命名为”Years”。
输出:
Name Surname Years
0 John Doe 32
1 Mickey Mouse 37
总结
在本文中,我们介绍了如何使用Pandas来重命名特定的列。我们涵盖了四种方法:使用rename函数,使用set_axis函数,使用rename_axis函数以及直接修改columns属性。这些方法均有其优缺点,用户可以根据自己的需求选择最适合的方法。
极客教程