pandas中df.rename()的具体使用_第1页
pandas中df.rename()的具体使用_第2页
pandas中df.rename()的具体使用_第3页
pandas中df.rename()的具体使用_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第pandas中df.rename()的具体使用df.rename()用于更改行列的标签,即行列的索引。可以传入一个字典或者一个函数。在数据预处理中,比较常用。

官方文档:

DataFrame.rename(self,mapper=None,index=None,columns=None,axis=None,copy=True,inplace=False,level=None,errors=ignore)

参数解释:

创建实例

importpandasaspd

df=pd.DataFrame({'name':['zhao','qian','sun','wang'],'mark':[150,122,155,132],'gender':['female','female','male','male']})

df

namemarkgender

0zhao150female

1qian122female

2zhou155male

3wang132male

mapper:dictorfunction

映射关系,可以是字典,也可以是一个函数。

df.rename({0:111})

name

mark

gender

111

zhao

150

female#行索引从0变为111

1

qian

122

female

2

zhou

155

male

3

wang

132

male

df.rename(lambdax:x+11)#参数也可以是函数,索引都加了11

name

mark

gender

11

zhao

150

female

12

qian

122

female

13

zhou

155

male

14

wang

132

male

index、columns、axis:

这3个参数作用类似,dataframe中有行和列两个方向,在改名时,需要指明改名的是行还是列(默认是行),使用df.rename(index=mapper)或者df.rename(columns=mapper)的形式,和df.rename(mapper,axis=0or1)的效果是一样的

df.rename(lambdax:x+'11',axis=1)

name11

mark11

gender11

#列索引都加了11,name变为name11

0

zhao

150

female

1

qian

122

female

2

zhou

155

male

3

wang

132

male

df.rename(columns=lambdax:x+'11')#等价于上面,写法更简洁直观

name11

mark11

gender11

0

zhao

150

female

1

qian

122

female

2

zhou

155

male

3

wang

132

male

copy:bool,default=True

默认为True,效果不清楚。。。文档就一句话,与会复制底层数据(alsocopyunderlyingdata),等一个课代表解答一下。

inplace:bool,defaultFalse

将结果返回赋值给原变量,无需再次将结果赋值给新变量。即df.rename(inplace=True)之后,df的值发生改变(pandas中好多方法都有这个参数,此处就演示了)

levelint,levelname,defaultnone

针对多层索引,指定需要改名字的索引具体是哪一个。

df1=pd.DataFrame([10,11,12,13],index=[['a','a','b','b'],[1,2,3,4],[4,3,2,1]],columns=['tt'])

tt#前三列都为索引

a1410

2311

b3212

4113

df1.rename(index={1:'dd'})

tt#索引中所有的1都变成了dd

add410

2311

b3212

4dd13

df1.rename(index={1:'dd'},level=1)

tt#只有第2列索引改为dd(从0开始计数)

add410

2311

b3212

4113

errors:{ignore,raise},defaultignore

发生错误的处理方式,ignore为忽略,raise为报错。比如改名字是,如果传入的参数中包含索引列没有的值,就会报错,ignore或者raise来决定错误的处理方式

df1

tt#前三列都为索引

a1410

23

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论