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中的实现
May 04 Python
Python中规范定义命名空间的一些建议
Jun 04 Python
python读取与写入csv格式文件的示例代码
Dec 16 Python
Python中文件的写入读取以及附加文字方法
Jan 23 Python
Python之时间和日期使用小结
Feb 14 Python
利用python实现周期财务统计可视化
Aug 25 Python
python采集百度搜索结果带有特定URL的链接代码实例
Aug 30 Python
解决Python列表字符不区分大小写的问题
Dec 19 Python
如何在mac下配置python虚拟环境
Jul 06 Python
Python pandas对excel的操作实现示例
Jul 21 Python
python反爬虫方法的优缺点分析
Nov 25 Python
详解Python描述符的工作原理
Jun 11 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的朋友 经常问的一些问题。不断更新
2011/08/11 PHP
php数组函数序列之in_array() - 查找数组中是否存在指定值
2011/11/07 PHP
基于PHP Socket配置以及实例的详细介绍
2013/06/13 PHP
php 读取文件头判断文件类型的实现代码
2013/08/05 PHP
实现WordPress主题侧边栏切换功能的PHP脚本详解
2015/12/14 PHP
利用PHP生成CSV文件简单示例
2016/12/21 PHP
mac pecl 安装php7.1扩展教程
2019/10/17 PHP
一些技巧性实用js代码小结
2009/10/14 Javascript
js以对象为索引的关联数组
2010/07/04 Javascript
JQuery获取样式中的background-color颜色值的问题
2013/08/20 Javascript
js实现仿Windows风格选项卡和按钮效果实例
2015/05/13 Javascript
详解Document.Cookie
2015/12/25 Javascript
百度地图给map添加右键菜单(判断是否为marker)
2016/03/04 Javascript
详解Angular.js的$q.defer()服务异步处理
2016/11/06 Javascript
微信小程序之picker日期和时间选择器
2017/02/09 Javascript
原生js仿浏览器滚动条效果
2017/03/02 Javascript
javascript 中select框触发事件过程的分析
2017/08/01 Javascript
JavaScript学习笔记之惰性函数示例详解
2017/08/27 Javascript
Bootstrap Fileinput 4.4.7文件上传实例详解
2018/07/25 Javascript
vue实例中data使用return包裹的方法
2018/08/27 Javascript
vue项目持久化存储数据的实现代码
2018/10/01 Javascript
浅谈express.js框架中间件(middleware)
2019/04/07 Javascript
在vue-cli创建的项目中使用sass操作
2020/08/10 Javascript
python try except 捕获所有异常的实例
2018/10/18 Python
在pycharm中设置显示行数的方法
2019/01/16 Python
基于Python实现剪切板实时监控方法解析
2019/09/11 Python
python通过文本在一个图中画多条线的实例
2020/02/21 Python
python如何删除文件、目录
2020/06/23 Python
HTML5响应式(自适应)网页设计的实现
2017/11/17 HTML / CSS
澳大利亚当地最大的时装生产商:Cue
2018/08/06 全球购物
我爱我的祖国演讲稿
2014/05/04 职场文书
师德师风承诺书
2014/05/23 职场文书
教学改革问题查摆整改措施
2014/09/27 职场文书
铣工实训报告
2014/11/05 职场文书
小学优秀学生评语
2014/12/29 职场文书
微信小程序调用python模型
2022/04/21 Python