python-pandas dataframe正则筛选包含某字符串的列数据str.contains()

用法:

Series.str.contains(pat, case=True, flags=0, na=nan, regex=True)
  • 参数:
    pat: 字符序列或正则表达式。
    case: 如果为True,则区分大小写。
    flags: 要传递给re模块的标志,例如重新IGNORECASE。
    na: 填写缺失值的值。
    regex: 如果为True,则假定pat是一个正则表达式。

  • 模糊过滤:

Bool = df.列名.str.contains("某字符串")

可以通过 | , 来加多字符串,来进行筛选。

Bool = df.列名.str.contains("某字符串0 | 某字符串1")

返回布尔值的序列或索引,True则是符合筛选条件的数据。

在这里插入图片描述
利用Bool的索引即可筛选到需要的内容。

df = df[Bool]

在这里插入图片描述也可以通过 ~ ,进行反转。(获取除以上数据的所有数据)
在这里插入图片描述

  • 正则匹配

df = df[df.列名.str.contains(".*?某字符串 | .*?某字符串")]

版权声明:本文为qq_35706314原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。