python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > python dataframe列应用正则表达式筛选

python dataframe列应用正则表达式筛选方式

作者:NO23412号菜狗

这篇文章主要介绍了python dataframe列应用正则表达式筛选方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

dataframe列应用正则表达式筛选

假设有如下的 DataFrame:


【DataFrame】对某列应用正则表达式生成另一列

现在需要增加一列,名字为选择原因,内容为在经营范围中进行搜索,如果发现含有 设备、汽车、网络 中的任何一个词的,就在选择原因中写上这个搜索到的词,否则不填。

我们可以对列调用 apply 方法,使用正则表达式来进行匹配,假设 DataFrame 名称为 df

代码如下:

import re
 
pattern =  r'设备|汽车|网络'
# 一行超人
df['选择原因'] = df['经营范围'].apply(lambda  s: ''.join(set(re.findall(pattern, s))) if re.findall(pattern, s) else  '')

dataframe通过正则表达式筛选包含的数据

示例

import re
df=df.fillna('')
df.loc[df.apply(lambda x:True if re.search('处理中|暂不解决',x['解决状态'],re.I) else False,axis=1)]

判断

lambda x:True if re.search(正则表达式,字符串,re.I) else False

符合条件的返回True 否则返回False

None处理

df=df.fillna('')

避免正则函数中接收非字符串内容

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文