pandas中df.rename()的具体使用

 更新时间:2022年08月15日 15:21:43   作者:非昨  
本文主要介绍了pandas中df.rename()的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

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

官方文档:

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

参数解释:

创建实例

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

    name    mark    gender
0    zhao    150        female
1    qian    122        female
2    zhou    155        male
3    wang    132        male

mapper:dict or function

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

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(lambda x: 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=0 or 1)的效果是一样的

df.rename(lambda x: 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=lambda x: 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,效果不清楚。。。文档就一句话,与会复制底层数据(also copy underlying data), 等一个课代表解答一下。

inplace:bool,default False

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

level int,level name,default none

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

df1 = pd.DataFrame([10,11,12,13],index=[['a','a','b','b'],[1,2,3,4],[4,3,2,1]],columns=['tt'])
df1
            tt #前三列都为索引
a    1    4    10
    2    3    11
b    3    2    12
    4    1    13
    
df1.rename(index={1:'dd'})
            tt#索引中所有的1都变成了dd
a    dd    4    10
    2    3    11
b    3    2    12
    4    dd    13
    
df1.rename(index={1:'dd'},level=1)
            tt#只有第2列索引改为dd(从0开始计数)
a    dd    4    10
    2    3    11
b    3    2    12
    4    1    13

errors:{‘ignore’, ‘raise’}, default ‘ignore’

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

df1
            tt #前三列都为索引
a    1    4    10
    2    3    11
b    3    2    12
    4    1    13
    
df1.rename(index={11:'dd'},level=1,errors='raise')
KeyError: '[11] not found in axis'#报错,11没在索引内

到此这篇关于pandas中df.rename()的具体使用的文章就介绍到这了,更多相关pandas df.rename()内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 深入了解Python中描述器的使用

    深入了解Python中描述器的使用

    Python描述器是Python编程语言中的一个重要特性,它提供了一种灵活且强大的机制来控制属性访问行为。在本文中,我们将详细介绍Python描述器的概念、实现方式以及如何使用Python描述器来增强我们的Python程序
    2023-03-03
  • Python运算符+与+=的方法实例

    Python运算符+与+=的方法实例

    这篇文章主要介绍了Python运算符+与+=的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-02-02
  • Python提取PDF内容的方法(文本、图像、线条等)

    Python提取PDF内容的方法(文本、图像、线条等)

    这篇文章主要介绍了Python提取PDF内容的方法(文本、图像、线条等),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • 关于python中time和datetime的区别与用法

    关于python中time和datetime的区别与用法

    这篇文章主要介绍了关于python中time和datetime的区别与用法,Python中封装了很多实用的函数,那么关于时间的函数time和datetime有什么区别和作用,让我们来看看吧
    2023-03-03
  • Python3 使用cookiejar管理cookie的方法

    Python3 使用cookiejar管理cookie的方法

    今天小编就为大家分享一篇Python3 使用cookiejar管理cookie的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • 对Python强大的可变参数传递机制详解

    对Python强大的可变参数传递机制详解

    今天小编就为大家分享一篇对Python强大的可变参数传递机制详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-06-06
  • Python类反射机制使用实例解析

    Python类反射机制使用实例解析

    这篇文章主要介绍了Python类反射机制使用实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • 如何在Python里使用ChatGPT及ChatGPT简介

    如何在Python里使用ChatGPT及ChatGPT简介

    今年最火的应该就是ChatGPT了,现在短短2个月已经突破了1亿注册用户,马斯克可高兴坏了,这篇文章主要介绍了如何在Python里使用ChatGPT及ChatGPT是什么?注册方式?需要的朋友可以参考下
    2023-02-02
  • python日期相关操作实例小结

    python日期相关操作实例小结

    这篇文章主要介绍了python日期相关操作,结合实例形式总结分析了Python针对日期时间的获取、转换、运算等相关操作技巧,需要的朋友可以参考下
    2019-06-06
  • Python代码中如何读取键盘录入的值

    Python代码中如何读取键盘录入的值

    在本篇文章里小编给大家分享的是关于Python代码中读取键盘录入值的方法,需要的朋友们可以参考下。
    2020-05-05

最新评论