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将多个文本文件合并为一个文本的代码(便于搜索)

    源代码目录一般很详细,每个代码文件都不长,一般只占几十行而已。在跟着书籍学习的过程中,可以打开源代码运行之后查看效果,或者适当修改看看变化,这都是很好的掌握技术的好办法。
    2011-03-03
  • python在非root权限下的安装方法

    python在非root权限下的安装方法

    下面小编就为大家分享一篇python在非root权限下的安装方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-01-01
  • Python实现不规则图形填充的思路

    Python实现不规则图形填充的思路

    这篇文章主要介绍了Python实现不规则图形填充的思路,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • python内存占用过多问题以及其解决方案

    python内存占用过多问题以及其解决方案

    Python是一种高级编程语言,被广泛应用于各种领域,包括网站开发、数据分析、人工智能等,这篇文章主要给大家介绍了关于python内存占用过多问题以及其解决方案的相关资料,需要的朋友可以参考下
    2024-08-08
  • 一文教会你使用Python来下一场雪

    一文教会你使用Python来下一场雪

    这篇文章主要给大家介绍了关于使用Python来下一场雪的相关资料,文章描述了大雪缓缓下落的场景,并提供了完整的代码示例,对大家学习或者使用python具有一定的参考借鉴价值,需要的朋友可以参考下
    2024-11-11
  • python解决Fedora解压zip时中文乱码的方法

    python解决Fedora解压zip时中文乱码的方法

    这篇文章给大家介绍了如何利用python解决Fedora解压zip时中文乱码的方法,对大家具有一定参考借鉴价值,有需要的朋友们可以参考学习,下面来一起看看吧。
    2016-09-09
  • 导入tensorflow:ImportError: libcublas.so.9.0 报错

    导入tensorflow:ImportError: libcublas.so.9.0 报错

    这篇文章主要介绍了导入tensorflow:ImportError: libcublas.so.9.0 报错,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-01-01
  • python 实现简易的记事本

    python 实现简易的记事本

    这篇文章主要介绍了python 实现简易的记事本的示例代码,帮助大家更好的理解和学习python,感兴趣的朋友可以了解下
    2020-11-11
  • 浅析python的优势和不足之处

    浅析python的优势和不足之处

    在本篇内容中小编给大家整理了关于分析python的优势和不足的分析,有需要的朋友们参考下。
    2018-11-11
  • Python初学者需要注意的事项小结(python2与python3)

    Python初学者需要注意的事项小结(python2与python3)

    这篇文章主要介绍了Python初学者需要注意的事项小结,包括了python2与python3的一些区别,需要的朋友可以参考下
    2018-09-09

最新评论