我正在清理一个数据集与欺诈电子邮件地址,我要删除。在
我建立了多个规则来捕捉重复和欺诈域名。但是有一个screnario,我想不出如何用python编写一个规则来标记它们。在
我有这样的规则:
#delete punction
df['email'].apply(lambda x:''.join([i for i in x if i not in string.punctuation]))
#flag yopmail
pattern = "yopmail"
match = df['email'].str.contains(pattern)
df['yopmail'] = np.where(match, 'Y', '0')
#flag duplicates
df['duplicate']=df.email.duplicated(keep=False)
这是我找不到规则来捕捉它的数据。基本上,我正在寻找一种方法来标记以相同方式开始的地址,但最后有连续的数字。在
^{pr2}$
可以使用正则表达式执行此操作;示例如下:
如果运行代码,您将看到:
^{pr2}$此方法的好处是其标准化(正则表达式),并且您可以通过调整
{}
中的值来轻松调整匹配的强度,这意味着您可以拥有一个全局配置文件,在其中设置/调整这些值。您还可以轻松地调整正则表达式,而不必重写代码。在首先看一下regexp问题here
其次,尝试像这样过滤电子邮件地址:
我的解决方案既不高效,也不美观。但看看它是否对你有用@jeangelj。对于您提供的示例来说,它绝对有效。祝你好运!在
相关问题 更多 >
编程相关推荐