如何通过自定义函数Pandas过滤行?

How to filter rows by custom function Pandas?

我有一个自定义正则表达式 Python 函数来检查是否是电子邮件:

def isEmail(str):
  return True;

我想遍历 Pandas 数据框中的所有行并验证列 email。和 return 有效行数 (true/false)。

我找到了 apply() Pandas 函数。

我尝试只保留电子邮件列具有正确电子邮件地址的行:

def isEmail(str):
    return re.search('regex', str)

    dt[isEmail(dt['email'])])

然后再次调用此函数来计算要放入 Python 集合中的错误行数:

incorrectEmails = {emails: 0}
count = dt[isEmail(dt['email'])])
incorrectEmails.set(count)

你可以在这里找到答案乔治

您可以尝试在 is_email() 函数中添加一个全局计数器来计算提供了多少错误,并在 email

上使用 .apply()
dt2 = dt[dt['email'].apply(is_email)]

希望对您有所帮助!