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 相关文章推荐
pycharm 使用心得(四)显示行号
Jun 05 Python
Python使用random和tertools模块解一些经典概率问题
Jan 28 Python
在Linux中通过Python脚本访问mdb数据库的方法
May 06 Python
python处理DICOM并计算三维模型体积
Feb 26 Python
Python实现的银行系统模拟程序完整案例
Apr 12 Python
django多个APP的urls设置方法(views重复问题解决)
Jul 19 Python
tensorflow实现测试时读取任意指定的check point的网络参数
Jan 21 Python
python实现引用其他路径包里面的模块
Mar 09 Python
Django 设置admin后台表和App(应用)为中文名的操作方法
May 10 Python
Python中flatten( ),matrix.A用法说明
Jul 05 Python
python tqdm实现进度条的示例代码
Nov 10 Python
Django模板报TemplateDoesNotExist异常(亲测可行)
Dec 18 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
网友原创的PHP模板类代码
2008/09/07 PHP
浅析echo(),print(),print_r(),return之间的区别
2013/11/27 PHP
PHP入门之常量简介和系统常量
2014/05/12 PHP
PHP中使用GD库创建圆形饼图的例子
2014/11/19 PHP
PHP生成唯一订单号的方法汇总
2015/04/16 PHP
在Laravel的Model层做数据缓存的实现
2019/09/26 PHP
laravel 解决ajax异步提交数据,并还回填充表格的问题
2019/10/15 PHP
JS 巧妙获取剪贴板数据 Excel数据的粘贴
2009/07/09 Javascript
经典海量jQuery插件 大家可以收藏一下
2010/02/07 Javascript
JavaScript 学习初步 入门教程
2010/03/25 Javascript
基于jQuery实现图片的前进与后退功能
2013/04/24 Javascript
原生JavaScript实现连连看游戏(附源码)
2013/11/05 Javascript
jquery JSON的解析方式示例介绍
2014/07/27 Javascript
jquery带翻页动画的电子杂志代码分享
2015/08/21 Javascript
微信小程序 wx:for的使用实例详解
2017/04/27 Javascript
jQuery实现遍历XML节点和属性的方法示例
2018/04/29 jQuery
vue2.0 可折叠列表 v-for循环展示的实例
2018/09/07 Javascript
微信小程序制作表格的方法
2019/02/14 Javascript
JS实现移动端点击按钮复制文本内容
2019/07/28 Javascript
webpack的 rquire.context用法实现工程自动化的方法
2020/02/07 Javascript
基于JavaScript实现留言板功能
2020/03/16 Javascript
基于ajax及jQuery实现局部刷新过程解析
2020/09/12 jQuery
在Vue中使用HOC模式的实现
2020/08/23 Javascript
vue实现拖拽进度条
2021/03/01 Vue.js
python指定写入文件时的编码格式方法
2018/06/07 Python
Python迭代器与生成器用法实例分析
2018/07/09 Python
CSS3 渐变(Gradients)之CSS3 线性渐变
2016/07/08 HTML / CSS
中粮集团旗下食品网上购物网站:我买网
2016/09/22 全球购物
双方协议书
2014/04/22 职场文书
街道党工委党的群众路线教育实践活动对照检查材料思想汇报
2014/10/05 职场文书
2014法制宣传日活动总结范文
2014/11/01 职场文书
实习计划书范文
2015/01/16 职场文书
漂亮妈妈观后感
2015/06/08 职场文书
小学运动会加油词
2015/07/18 职场文书
课程设计感想范文
2015/08/11 职场文书
nginx七层负载均衡配置详解
2022/07/15 Servers