如何根据另一个数据帧中的行的条件向量化查找一个数据帧的行索引

How to vectorize looking up the row index of one dataframe based on conditions from rows in another dataframe

我有两个具有相同列的 pandas 数据框,例如

df1 = pd.DataFrame({'A':[0,0,1,1], 'B':[0,1,0,1]})
df2 = pd.DataFrame({'A':[0,1], 'B':[1,1]})

我想 return df1 中的行索引,其中的值与 df2 中的行匹配。例如,产生 [1, 3]。我可以通过循环 df2 来做到这一点,但实际上这真的很慢。在 Pandas 中向量化此操作的正确方法是什么?

先尝试 merge

out = df1.reset_index().merge(df2,how='right')['index']
Out[63]: 
0    1
1    3
Name: index, dtype: int64