Python 如何在dataframe中对子字符串关系使用布尔索引?
我试图计算数据帧中哪些字符串是给定字符串的子字符串。我不想使用列表或循环,但希望使用简洁的内部语法来实现这一点 我就是无法让逻辑发挥作用。这就是我所拥有的:Python 如何在dataframe中对子字符串关系使用布尔索引?,python,pandas,indexing,Python,Pandas,Indexing,我试图计算数据帧中哪些字符串是给定字符串的子字符串。我不想使用列表或循环,但希望使用简洁的内部语法来实现这一点 我就是无法让逻辑发挥作用。这就是我所拥有的: import pandas given = 'abcdef' df = pandas.DataFrame(['abc', 'cde', 'aaa'],columns=['A']) matches = df[(df.A in given)] 我想要的是df的子帧,它只包含满足布尔条件的条目。我不能那么难。。。但我似乎无法正确地使用它。
import pandas
given = 'abcdef'
df = pandas.DataFrame(['abc', 'cde', 'aaa'],columns=['A'])
matches = df[(df.A in given)]
我想要的是df
的子帧,它只包含满足布尔条件的条目。我不能那么难。。。但我似乎无法正确地使用它。您可以使用。范例-
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
显然,
df.A
不是字符串。。。这就是问题所在。但是什么是蟒蛇式和熊猫式的表达方式呢?