重命名Pandas数据框架中的列,一般可以使用rename
方法来实现。
方法一:使用rename方法
- 语法格式:
df.rename(columns={old_name1:new_name1, old_name2:new_name2, ...}, inplace=True)
其中,columns
指向需要被替换的列名与新列名的对应关系,inplace=True
表示在原数据框上进行替换(不使用inplace
参数时,原数据框不会被修改,而是返回一个替换后的数据框)。
- 示例:
下面给出一个例子:
import pandas as pd
data = {'id':[1,2,3],'name':['Tom','Jack','Steve'],'age':[33,45,22],'gender':['M','M','F']}
df = pd.DataFrame(data)
# 输出原数据框
print('原数据框:')
print(df)
# 使用rename方法重命名列
df.rename(columns={'id':'编号', 'name':'姓名', 'age':'年龄', 'gender':'性别'}, inplace=True)
# 输出重命名后的数据框
print('重命名后的数据框:')
print(df)
运行结果:
原数据框:
id name age gender
0 1 Tom 33 M
1 2 Jack 45 M
2 3 Steve 22 F
重命名后的数据框:
编号 姓名 年龄 性别
0 1 Tom 33 M
1 2 Jack 45 M
2 3 Steve 22 F
该例子中,使用rename
方法将原数据框中的列名id
、name
、age
、gender
重命名为编号
、姓名
、年龄
、性别
。
方法二:直接修改列名属性
另外一种修改Pandas数据框架中的列名的方法是,调用数据框架的columns
属性来修改:
df.columns = ['new_name1','new_name2',...,'new_nameN']
示例如下:
import pandas as pd
data = {'id':[1,2,3],'name':['Tom','Jack','Steve'],'age':[33,45,22],'gender':['M','M','F']}
df = pd.DataFrame(data)
# 输出原数据框
print('原数据框:')
print(df)
# 直接修改列名属性
df.columns = ['编号', '姓名', '年龄', '性别']
# 输出修改后的数据框
print('修改后的数据框:')
print(df)
运行结果与前一种方法一致。需要注意的是,直接修改列名属性更加方便,但不够灵活,例如无法一次性修改多个列的名称。
总体来说,两种方法都可以用来重命名Pandas数据框架中的列名,具体使用哪种方法应根据实际情况来决定。