【问题标题】:Pandas: get the dataframe rows which value is matched with regexpPandas:获取与正则表达式匹配的数据帧行
【发布时间】:2022-01-24 04:52:07
【问题描述】:

我有一个如下的数据框

username
NA
NA
NA
['Bob']
['']
['']
['Meril']
['Aston']
['Meril+Aston']

我需要所有包含 Bob、Meril 和 Aston 或 Meril+Aston 或 Bob+Aston....所有组合的行。

我试过了

df.username.str.extract(r"\['Bob.*|['Meril.*|['Aston.*")

它不工作

【问题讨论】:

  • 还有其他字符串吗?有清单吗?
  • 仅字符串 ...但看起来像这样的列表

标签: python pandas


【解决方案1】:

试试这个:

subset = df[df.username.astype('str').str.contains('Bob|Meril|Aston').fillna(False)]

输出:

>>> subset
          username
3          ['Bob']
6        ['Meril']
7        ['Aston']
8  ['Meril+Aston']

【讨论】:

    猜你喜欢
    • 2019-04-09
    • 2016-02-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-19
    • 1970-01-01
    相关资源
    最近更新 更多