python - 如何在 pandas 数据框中使用 bool 索引来表示子字符串关系?

标签 python pandas indexing

我正在尝试计算 pandas 数据框中的哪些字符串是给定字符串的子字符串。我不想使用列表或循环,但想使用简洁的 pandas 内部语法来完成此任务。

我就是无法让逻辑发挥作用。这就是我所拥有的:

import pandas

given = 'abcdef'

df = pandas.DataFrame(['abc', 'cde', 'aaa'],columns=['A'])

matches = df[(df.A in given)]

我想要的是 df 的子帧,仅包含满足 bool 条件的条目。我不可能那么努力...但我似乎无法做到正确。

最佳答案

您可以使用Series.apply 。示例-

df[df['A'].apply(lambda x: x in given)]

演示 -

In [22]: df = pandas.DataFrame(['abc', 'cde', 'aaa'],columns=['A'])

In [23]: given = 'abcdef'

In [24]: df[df['A'].apply(lambda x: x in given)]
Out[24]:
     A
0  abc
1  cde

关于python - 如何在 pandas 数据框中使用 bool 索引来表示子字符串关系?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32911884/

相关文章:

python - 使用自定义变量作为 .rolling() 窗口

python - 将记录中的值移动一列。

python-2.7 - 将两个数据框列中的数据合并为一列

sql - Postgresql,在 Between 中使用索引

sql - PostgreSQL 自连接会忽略索引吗?

python - 在 Django 中用于 128 位 UUID 的最佳模型字段

python - 列表的浅拷贝[:]

python - python-mysql游标: 1054 unknown column "x" in 'field list' 报错信息

python - Pandas 数据框导出到 excel 导致 TypeError

python - 合并具有重复索引的数据框