L2-pandas中的replace、rename和map函数

本文介绍了Pandas中用于更新和映射DataFrame对象的replace、rename和map函数。通过实例展示了如何使用replace替换特定值,限定替换范围;如何用rename重命名索引和列名;以及如何利用map根据指定列映射新增属性。理解这些函数的不同作用可以帮助更精确地操作DataFrame。
Python3.8

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

发现几个小函数,在pandas中用来对dataframe对象进行更新与映射操作,试用并分享如下。

准备数据样例:

frame1 = pd.DataFrame({'item':['ball','mug','pen','pencil','ashtray'],
                      'color':['white','rosso','verde','black','yellow'],
                      'price':[5,9,2,3,1],
                      'color2':['white','rosso','rosso','verde','yellow']})
frame1

数据预览:
在这里插入图片描述

1. 函数replace()

  • 不指定字段、默认替换dataframe对象所有字段的元素值
    新建一个字典,key存储待替换的元素,value存储替换后的值
newcolors = {'rosso':'red'
            ,'verde':'green'}
frame1.replace(newcolors)

将字典作为replace()的传入参数,将所有元素为’rosso’替换为’red’, ‘verde’替换为’green’,结果如下。
在这里插入图片描述

  • 限定字段,只替换目标列
frame1.replace({'color':['white','red']},'myDefineColor')

如下,只对字段color中的元素值有更改,color2不做修改。
在这里插入图片描述

2. 函数rename()

  • 默认重命名索引名称
 reindex = {0:'first',
          1:'second',
          2:'third',
          3:'four',
          5:'five'}
frame1.rename(reindex)

在这里插入图片描述

  • 指定参数重命名字段名称
recolumn = {'item':'t_item',
          'color':'t_color'}
frame2.rename(columns = recolumn)

在这里插入图片描述

3.map() 映射

用来对已有pandas对象按照指定列关联并新增属性,类似于数据库SQL的中join操作后,再添加新的字段。

frame2 = pd.DataFrame({'item':['ball','mug','pen','pencil','ashtray'],
                      'color':['white','red','green','black','yellow']})

price = {'ball':3,
        'mug':8,
        'bottle':9}
frame2['price'] = frame2['item'].map(price)
frame2

对frame2中的item字段实现map()操作,新增price字段。若字典Price中的key值与item列中的元素值相等,则取字典中相应的value,否则,默认为NULL。
在这里插入图片描述

小结

留意函数在默认使用时的操作对象是索引还是列、影响范围-是对某列还是整个dataframe对象,不至于误.

您可能感兴趣的与本文相关的镜像

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值