pandas库是Python中用于数据分析和处理的重要工具,在pandas库中有一个rename()方法,可以用来更改DataFrame或Series的行或列标签。本文将详细讲解pandas.rename()的作用与用法。
作用
pandas.rename()的主要作用是更改DataFrame或Series的行或列标签,改变标签后可以提高数据的可读性和理解性,常用于重命名数据中的某些特征或正确标记数据标签。
使用方法
pandas.rename()的语法如下所示:
DataFrame.rename(mapper=None, index=None, columns=None, axis=None, copy=True, inplace=False, level=None)
其中各参数含义如下:
- mapper: 字典类型,用来设置旧列名与新列名的映射关系,可以对行和列同时进行映射;
- index: 字典类型,用来设置旧行名与新行名的映射关系;
- columns: 字典类型,用来设置旧列名与新列名的映射关系;
- axis: 设置是对行名进行映射(axis=0,和index等效)还是对列名进行映射(axis=1,和columns等效);
- copy: 是否创建对源数据的副本,缺省为True;
- inplace: 是否在原数据上进行改变,缺省为False;
- level: 多级行索引或列索引的指定级别。
下面给出几个使用pandas.rename()的示例。
示例1:更改列名
假设有一份数据集,包含姓名、年龄、性别和成绩四列,现需要将“年龄”列改为“年龄段”,将“成绩”列改为“得分”,代码如下:
import pandas as pd
#创建数据
data = {'姓名':['小明','小红','小张'],
'年龄':[18,20,19],
'性别':['男','女','男'],
'成绩':[98,86,92]}
#生成DataFrame
df=pd.DataFrame(data)
#更改列名
df.rename(columns={'年龄':'年龄段','成绩':'得分'},inplace=True)
#输出结果
print(df)
输出的结果如下:
姓名 年龄段 性别 得分
0 小明 18 男 98
1 小红 20 女 86
2 小张 19 男 92
示例2:更改行名
假设有一份数据集,列名为1、2、3、4,现需要将1、2、3、4四个数字分别改为“Jan”、“Feb”、“Mar”、“Apr”,代码如下:
import pandas as pd
#创建数据
data = {1:[10,20,30],
2:[40,50,60],
3:[70,80,90],
4:[100,110,120]}
#生成DataFrame
df=pd.DataFrame(data)
#更改行名
df.rename(index={0:'Jan',
1:'Feb',
2:'Mar',
3:'Apr'},inplace=True)
#输出结果
print(df)
输出的结果如下:
1 2 3 4
Jan 10 40 70 100
Feb 20 50 80 110
Mar 30 60 90 120
总结
本文介绍了pandas.rename()的作用和使用方法,主要包括mapper、index、columns、axis、copy、inplace和level等参数,常用于更改DataFrame或Series的行或列标签。通过合理运用pandas.rename()可以提高数据可读性和理解性,方便进行后续的数据分析。