已解决FutureWarning: The default value of regex will change from True to False in a future version. In

已解决(pandas使用正则表达式匹配报错)FutureWarning: The default value of regex will change from True to False in a future version. In addition, single character regular expressions will not be treated as literal strings when regex=True.




文章目录

  • 报错代码
  • 报错翻译
  • 报错原因
  • 解决方法
  • 写在结尾




报错代码


粉丝群一个小伙伴用pandas的时候想用正则匹配,代码如下:

import pandas as pd

df = pd.read_excel("./test.xls")
print(df)
# 清洗数据
orgname = df['企业名称(发生更名的标记*)']
PRV = df['地区']
df['企业名称(发生更名的标记*)'] = orgname.str.replace("*", "")
df['地区'] = PRV.str.replace("\n", "")
print(df)

报错信息


在这里插入图片描述


报错翻译


报错信息翻译

未来警告 :在未来版本中,正则表达式的默认值将从True更改为False。此外,当regex=True时,单字符正则表达式将视为文字字符串。



报错原因


报错原因:由于之后的版本正则表达式的默认值会改变,所以最好是手动确定。



解决方法


在代码中添加一个regex=False参数,如下所示:

df['企业名称(发生更名的标记*)'] = orgname.str.replace("*", "", regex=False)

再次代码就成功了!


写在结尾


本文已收录于:《告别Bug》专栏

本专栏用于记录学习和工作中遇到的各种疑难Bug问题,以及粉丝群里小伙伴提出的各种问题,文章形式:报错代码 + 报错翻译 + 报错原因 + 解决方法,包括程序安装、运行程序过程中等等问题,订阅专栏后如遇到其他问题可私聊帮忙解决!!!

你可能感兴趣的:(《告别Bug》,python,pandas,开发语言,正则表达式)