在Python中搜索另一个数据帧中的一个数据帧的行

时间:2016-10-05 17:01:31

标签: python list search dataframe

我在python中有两个数据框:

  df1
       A     B     C
       1     1     0
       1     2     1 
       0     1     2
       .     .     .
       .     .     .

  df2
       T     W    S    Y
       7     4    5   [1]
       8     12   4   [0,7]
       10    14   6   [2,3]

我想浏览df1的所有行并在df2中找到具有以下特征的观察结果:

     (T <= A) and (W > A) and (S == B) and (sum(pd.Series(Y).isin([C])) != 0)

显然,使用for循环效率不高但是请你告诉我如何解决我的问题?我听说我可以像Matlab一样使用矢量化技术,但我不确定我们是否在python中使用了这样的技术。

1 个答案:

答案 0 :(得分:1)

您可以合并两个数据帧并过滤结果。我不确定它将如何优化,但它将比python for循环更快地完成工作。