首页 > 解决方案 > 如何在熊猫数据框中搜索元素列表

问题描述

我的意思是我需要来自 search_list 的 Original_dataframe 所需的 output_dataframe 和 specific_indexes?怎么做?以最快的方式?

原始数据框:

   textA  TextB
0       a        zz
1       bbb        zzzzz
2       ccc        zzz

搜索列表:

search_list = ['a','ccc']

我的意思是我需要来自 search_list 的 Original_dataframe 所需的 output_dataframe 和 specific_indexes

所需的输出数据帧:

   textA  TextB
0       a        zz
2       ccc        zzz

所需的输出 specific_indexes:

specific_indexes [0, 2]

计算时间是最重要的。

标签: pythonpandas

解决方案


如果需要检查用于索引使用的任何列:

idx = df.index[df.isin(search_list).any(axis=1)]

df1 = df[df.isin(search_list).any(axis=1)]

通过更好的性能过滤器索引检查一列:

idx = df.index[df['textA'].isin(search_list)]

df1 = df[df['textA'].isin(search_list)]

推荐阅读