python|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")

【python|python-pandas dataframe正则筛选包含某字符串的列数据str.contains()】返回布尔值的序列或索引,True则是符合筛选条件的数据。
python|python-pandas dataframe正则筛选包含某字符串的列数据str.contains()
文章图片

利用Bool的索引即可筛选到需要的内容。
df = df[Bool]

python|python-pandas dataframe正则筛选包含某字符串的列数据str.contains()
文章图片
也可以通过 ~ ,进行反转。(获取除以上数据的所有数据)
python|python-pandas dataframe正则筛选包含某字符串的列数据str.contains()
文章图片

  • 正则匹配
df = df[df.列名.str.contains(".*?某字符串 | .*?某字符串")]

    推荐阅读