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

源数据

1、替换全部或者某一行

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

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

将南岸改为城区

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

使用inplace = True更改源数据

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

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

改变指定的列的数据

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

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

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

只改变指定的值

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

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

用列表的形式进行替换

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

替换的新值一样时

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

替换单个列的数值

3、使用正则表达式替换

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

源数据

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

正则表达式指定regex =True

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

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

指定列替换数据

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

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

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

指定列更改替换部分字符

指定列更改替换部分字符

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

python replace 用法相关推荐

  1. Python replace用法

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

  2. Python pandas用法

    Python pandas用法 无味之味关注 12019.01.10 15:43:25字数 2,877阅读 91,914 介绍 在Python中,pandas是基于NumPy数组构建的,使数据预处理. ...

  3. python goto 用法

    python goto 用法 pip install goto-statement from goto import with_goto @with_goto def range(start, sto ...

  4. Python SQLite 用法

    Python SQLite 用法 具体可以参考网址 代码: #导入 import sqlite3 #连接库,如果数据库不存在,那么它就会被创建,最后将返回一个数据库对象. # test.db:数据路路 ...

  5. import的用法python_Python导入模块,Python import用法(超级详细)

    Python导入模块,Python import用法(超级详细) 使用 Python 进行编程时,有些功能没必须自己实现,可以借助 Python 现有的标准库或者其他人提供的第三方库.比如说,在前面章 ...

  6. boost::hana::replace用法的测试程序

    boost::hana::replace用法的测试程序 实现功能 C++实现代码 实现功能 boost::hana::replace用法的测试程序 C++实现代码 #include <boost ...

  7. boost::fusion::replace用法的测试程序

    boost::fusion::replace用法的测试程序 实现功能 C++实现代码 实现功能 boost::fusion::replace用法的测试程序 C++实现代码 #include <b ...

  8. python with用法

    @python with用法 python中with可以明显改进代码友好度,比如: [python] view plaincopyprint? with open('a.txt') as f: pri ...

  9. Python高级用法总结

    Python很棒,它有很多高级用法值得细细思索,学习使用.本文将根据日常使用,总结介绍Python的一组高级特性,包括:列表推导式.迭代器和生成器.装饰器. 列表推导(list comprehensi ...

最新文章

  1. 公开课 | 人脸识别的最新进展以及工业级大规模人脸识别实践探讨
  2. html基础实验的实验原理,html网页设计实验报告.doc
  3. 听说你还没学Spring就被源码编译劝退了?30+张图带你玩转Spring编译
  4. 关于Hive sql里面的分组函数
  5. 腾讯云短信出现there are both domestic mobile phone numbers and international mobile phone numbers in the...
  6. (转)Android属性设置android:noHistory=true
  7. ssh 登陆错误后禁止ip再次登陆_macOS破坏SSH默认规则,程序员无法登录Web服务器...
  8. 【转载】一步步构建大型网站架构
  9. matlab状态方程 传递函数 可控性,matlab 控制系统仿真
  10. linux 命令(7) df
  11. 网站推广优化教程100条(完整版)
  12. 简体字和繁体字转换四种方法
  13. CVPR21-无监督异常检测《CutPaste:Self-Supervised Learning for Anomaly Detection and Localization》
  14. SpringSecurity实现数据库认证
  15. 【华为】Smart-Link基础知识
  16. python 网页答题器_大话西游答题器 Python版本
  17. ubuntu18 编译maplab opencv3_catkin 时出现Flow control statements are not properly nested.
  18. BugKu -- never give up
  19. 更改MTU解决docker pull不成功的问题
  20. 计算机基础知识(基础入门小白专属)九

热门文章

  1. (转)高效学习法--之西蒙学习法
  2. matlab减震控制,基于SMA-SPDS的小雁塔结构减震控制研究
  3. 408计算机学科专业综合参考书目
  4. 阿里云华为云七牛云 对象存储横向简单对比
  5. Python定时自动给微信好友发送天气预报
  6. PCL1.12.1无效的宏定义BOOST_DEFINITIONS -DBOOST_ALL_NO_LIB
  7. 稳定访问ipv6网络
  8. Codeforces 629C 简单DP
  9. safari打不开cookies_safari cookie设置中文失败的解决方法
  10. 无人机工程安全巡检具体如何实践?