pandas.str.replace不起作用的解决方法,


目录
  • 背景
  • 演示数据
  • python 与 pandas版本
  • 问题复现
  • 问题解决

背景

最近在处理别人给的数据时,大概 700w+ 行数据,发现有的字段里面存在换行符、斜杠等一些特殊字符,于是想着就用Python来处理下,因为Pandas处理数据还是很方便,结果发现这些转义字符: \n\r\ 一直替换不掉,后来经过研究成功替换,分享出来供大家参考

演示数据

演示数据

python 与 pandas版本

特意说一下版本,现在不同的版本功能可能不一样

软件版本

问题复现

因为涉及到字符串替换,所以直接想到的方法是用 pandas.Series.str.replace 来进行替换,但是一直不能成功,即使双斜杠也不行

问题复现

问题解决

在上面第7个单元格运行时,报了一个错误,FutureWarning: The default value of regex will change from True to False in a future version.,于是就翻看了 pandas.Series.str.replace 的官方文档:http://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.Series.str.replace.html,文档中写了 regex:bool, default True,正则默认是开启的,个人经验:正则表达式来处理转义字符是比较麻烦的事,因为里面的斜杠不知道要写几个,总是记不住

官方文档

经过测试如下几种方法,可行:

方法1:明确使用正则来处理,并且使用原字符 r

方法1

方法2:明确使用正则来处理,正常的写法,经测试需要4个斜杠

方法2

方法3:不使用正则来处理,但是在处理单个斜杠时,必须用2个

方法3

到此这篇关于pandas.str.replace 不起作用的解决方法的文章就介绍到这了,更多相关pandas.str.replace 不起作用内容请搜索3672js教程以前的文章或继续浏览下面的相关文章希望大家以后多多支持3672js教程! 

您可能感兴趣的文章:
  • pandas string转dataframe的方法
  • 把pandas转换int型为str型的方法
  • python语言中pandas字符串分割str.split()函数
  • 使用Streamlit和Pandas实现带有可点击链接的数据表格

评论关闭