Pandas替换及部分替换(replace)实现流程详解


Posted in Python onOctober 12, 2020

在处理数据的时候,很多时候会遇到批量替换的情况,如果一个一个去修改效率过低,也容易出错。replace()是很好的方法。

Pandas替换及部分替换(replace)实现流程详解

源数据

1、替换全部或者某一行

replace的基本结构是:df.replace(to_replace, value) 前面是需要替换的值,后面是替换后的值。

例如我们要将南岸改为城区:

Pandas替换及部分替换(replace)实现流程详解

将南岸改为城区

这样Python就会搜索整个DataFrame并将文档中所有的南岸替换成了城区(要注意这样的操作并没有改变文档的源数据,要改变源数据需要使用inplace = True)。

Pandas替换及部分替换(replace)实现流程详解

使用inplace = True更改源数据

由于南岸只有城市一列具有相同值,使用起来比较方便。

但是如果我们要改变表1Lon里的某个数据,而不改变Longitude的数据要怎么做呢?

Pandas替换及部分替换(replace)实现流程详解

改变指定的列的数据

所以只想替换部分数据的时候并且要写入源数据就需要指定inplace。

在上面的操作只改变了表1Lon的数据,其它列的数据并没有被替换,而且在替换后的结果不需要我们再和源数据进行合并操作,可以直接体现在源数据中。

2、替换指定的某个或指定的多个数值(用字典的形式)

Pandas替换及部分替换(replace)实现流程详解

只改变指定的值

这个很好理解,就是字典里的建作为原值,字典里的值作为替换的新值。

当然,我们也可是使用列表的形式进行替换:df.replace(['A','29.54'],['B',100])

Pandas替换及部分替换(replace)实现流程详解

用列表的形式进行替换

还有如果想要替换的新值是一样的话,我们还可以这样做:

Pandas替换及部分替换(replace)实现流程详解

替换的新值一样时

部分替换和替换某个值结合使用的话就可以替换单个列的数值:

Pandas替换及部分替换(replace)实现流程详解

替换单个列的数值

3、使用正则表达式替换

正则表达式很强大,能够让我们实现一次替换很多很多个不同的值:

Pandas替换及部分替换(replace)实现流程详解

源数据

Pandas替换及部分替换(replace)实现流程详解

正则表达式没有指定regex =True

Pandas替换及部分替换(replace)实现流程详解

正则表达式指定regex =True

使用正则表达式的时候记得后面加 regex=True参数。

有图中我们可以看到只要包含有大写的英文字母的数据都被替换了,如果我们要写入源数据还需要指定inpla = True。

Pandas替换及部分替换(replace)实现流程详解

指定列替换数据

当需要将缺失值替换掉的时候,我们可以考虑直接只用fillna(),功能更强大,这个前面已经有说过了。

在某些情况下,如果我们只需要某个数据的部分内容,我们该怎么操作呢?

比如要把变电站都改为transformer_substation,或者是把Latitude列的前面的ab改为AB:

Pandas替换及部分替换(replace)实现流程详解

指定列更改替换部分字符

Pandas替换及部分替换(replace)实现流程详解

指定列更改替换部分字符

需要注意的时更好指定列的时候,使用str.replace时不能使用inplace = True参数,因此需要改成赋值,赋值的时候不要忘了是列的赋值而不是整个表格的赋值。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python编程语言的35个与众不同之处(语言特征和使用技巧)
Jul 07 Python
Python实现完整的事务操作示例
Jun 20 Python
Django的分页器实例(paginator)
Dec 01 Python
python使用wxpy实现微信消息防撤回脚本
Apr 29 Python
Python字典推导式将cookie字符串转化为字典解析
Aug 10 Python
对Pytorch神经网络初始化kaiming分布详解
Aug 18 Python
用Python写一个自动木马程序
Sep 17 Python
使用Python实现 学生学籍管理系统
Nov 26 Python
python隐藏类中属性的3种实现方法
Dec 19 Python
PyQt5中向单元格添加控件的方法示例
Mar 24 Python
django的模型类管理器——数据库操作的封装详解
Apr 01 Python
解决jupyter notebook 出现In[*]的问题
Apr 13 Python
Django windows使用Apache实现部署流程解析
Oct 12 #Python
详解Django ORM引发的数据库N+1性能问题
Oct 12 #Python
如何实现一个python函数装饰器(Decorator)
Oct 12 #Python
Vs Code中8个好用的python 扩展插件
Oct 12 #Python
Django中和时区相关的安全问题详解
Oct 12 #Python
python调用有道智云API实现文件批量翻译
Oct 10 #Python
python线程池 ThreadPoolExecutor 的用法示例
Oct 10 #Python
You might like
ThinkPHP使用smarty模板引擎的方法
2014/07/01 PHP
thinkPHP中验证码的简单实现方法
2016/12/05 PHP
PHP使用递归算法无限遍历数组示例
2017/01/13 PHP
Array.prototype 的泛型应用分析
2010/04/30 Javascript
最新28个很棒的jQuery 教程
2011/05/28 Javascript
getElementByIdx_x js自定义getElementById函数
2012/01/24 Javascript
jquery图片轮播插件仿支付宝2013版全屏图片幻灯片
2014/04/03 Javascript
每天一篇javascript学习小结(String对象)
2015/11/18 Javascript
jquery中validate与form插件提交的方式小结
2016/03/26 Javascript
jQuery实现左侧导航模块的显示与隐藏效果
2016/07/04 Javascript
js实现右键菜单功能
2016/11/28 Javascript
jQuery序列化后的表单值转换成Json
2017/06/16 jQuery
Angular中响应式表单的三种更新值方法详析
2017/08/22 Javascript
详解jquery插件jquery.viewport.js学习使用方法
2017/09/08 jQuery
electron + vue项目实现打印小票功能及实现代码
2018/11/25 Javascript
微信小程序之下拉列表实现方法解析(附完整源码)
2019/08/23 Javascript
layui table 表格上添加日期控件的两种方法
2019/09/28 Javascript
vue仿淘宝滑动验证码功能(样式模仿)
2019/12/10 Javascript
python list转矩阵的实例讲解
2018/08/04 Python
解决pycharm无法识别本地site-packages的问题
2018/10/13 Python
Python代码打开本地.mp4格式文件的方法
2019/01/03 Python
Django ORM多对多查询方法(自定义第三张表&ManyToManyField)
2019/08/09 Python
python实现低通滤波器代码
2020/02/26 Python
最新版 Windows10上安装Python 3.8.5的步骤详解
2020/11/28 Python
英国最大的户外商店:Go Outdoors
2019/04/17 全球购物
在网络中有两台主机A和B,并通过路由器和其他交换设备连接起来,已经确认物理连接正确无误,怎么来测试这两台机器是否连通?如果不通,怎么来判断故障点?怎么排
2014/01/13 面试题
高校辅导员推荐信范文
2013/12/25 职场文书
幼儿教师思想汇报
2014/01/10 职场文书
生育关怀行动实施方案
2014/03/26 职场文书
反腐倡廉警示教育活动总结
2014/05/05 职场文书
人事任命书格式
2014/06/05 职场文书
中央空调节能方案
2014/06/15 职场文书
房屋买卖委托书格式范本格式
2014/10/13 职场文书
房产电话营销开场白
2015/05/29 职场文书
Python字符串对齐方法使用(ljust()、rjust()和center())
2021/04/26 Python
postgresql如何找到表中重复数据的行并删除
2023/05/08 MySQL