查找具有任何列列表中的所有字符串列表的数据框行

发布

我列出了可能出现在三列中的任何三列的术语。我想在三列中的某处找到所有包含所有三个术语的行。

从...开始 。

我有一个看起来像这样的数据框:

In [1]: data = [
    ['Missouri','Kansas City','Jackson County'],
    ['Boston','Massachusetts','Suffolk County'],
    ['Los Angeles','Los Angeles County','California'],
    ['Massachusetts','Suffolk County','Boston'],
    ['Philadelphia','Pennsylvania','Philadelphia County'],
    ['Kansas City','Missouri','Jackson County'],
    ['Kansas City','Missouri','Platte County']
]

In [2]: columns=['location0','location1','location2']

In [3]: df = pd.DataFrame(data,columns=columns)

In [4]: df

Out[4]: 
    location0       location1           location2
0   Missouri        Kansas City         Jackson County
1   Boston          Massachusetts       Suffolk County
2   Los Angeles     Los Angeles County  California
3   Massachusetts   Suffolk County      Boston
4   Philadelphia    Pennsylvania        Philadelphia County
5   Kansas City     Missouri            Jackson County
6   Kansas City     Missouri            Platte County

我想获得描述密苏里州杰克逊县堪萨斯城的数据框的所有行。

换句话说,我希望所有这三项均位于所有行中:['Kansas City','Jackson County','Missori']位于以下三列中的任何一列:['location0','location1','location2' ]:

目标

结果将如下所示:

    location0       location1       location2
0   Missouri        Kansas City     Jackson County
1   Kansas City     Missouri        Jackson County

尝试失败。

In [1]: look_for = ['Kansas City','Jackson County','Missouri']

In [2]: look_in = ['location0','location1','location2']

In [3]: result = df[col for col in look_in if df[col].isin(look_for)]

In [4]: result

Out [4]:   
File "<ipython-input-408-c42b1236af99>", line 3
result = df[col for col in look_in if df[col].isin(look_for)]
                  ^
SyntaxError: invalid syntax

在此先感谢您的帮助!

编辑:输入错误look_for

耶斯列尔

DataFrame.isin通过过滤后的值在过滤后的列中使用,并为True每行测试添加DataFrame.all

result = df[df[look_in].isin(look_for).all(axis=1)]
print (result)

     location0    location1       location2
0     Missouri  Kansas City  Jackson County
5  Kansas City     Missouri  Jackson County

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

postgres选择varchar []列中具有任何列表字符串的所有行

如何转换列中的字符串列表并通过相同的字符串拆分数据框以具有多个?

熊猫数据框-具有带有字符串列表的列

Pandas - 带列表的 DF - 查找与任何列中的字符串匹配的所有行

获取字符串列表中 Pandas DataFrame 列中的所有行 - 此模式具有匹配组

选择具有子字符串列表中任何成员的行

从具有拆分条件的字符串列表中填充数据框

在数据框字符串列中查找单词列表

在字符串列表中查找所有整数并以列表形式输出

在给定的字符串列表中查找字符串的所有字谜

检查数据框中的列是否包含字符串列表中的任何项目

如何在熊猫数据框中按日期计算字符串列表中所有元素的出现次数

具有字符串列到整数列表列的数据框

使用字符串列表或字典基于数据框中的现有列创建新列

删除字符串列表中的所有数字

从字符串列表中删除所有转义序列

在JSF中具有字符串列表的SelectItems

在具有1个字符差异的字符串列表中查找字符串

如何将具有字符串列表的行转换为多列

Python:将字符串列表转换为具有两列a和b的pandas数据框,分别对应奇数和偶数字符串

如果数据帧的任何列中包含子字符串列表中的任何值,则过滤行

如何从字符串列表中检查Pandas列是否具有值?

带有字符串列表的列中的文本的 Wordcloud

如何递归地从所有文件中删除与字符串列表不匹配的所有行

识别数据框列中所有包含Python列表中字符串的最有效方法?

搜索表中是否有字符串列表中的任何字符串

如何从字符串列表中创建所有第n个字符的列表?

在字符串列表中查找子字符串的所有實例,並返回找到子字符串的字符串的索引

有没有办法在字符串列表python中查找特定字符?