假设我有这两个列数相同但行数可能不同的数据框:
tmp = np.arange(0,12).reshape((4,3))
df = pd.DataFrame(data=tmp)
tmp2 = {'a':[3,100,101], 'b':[4,4,100], 'c':[5,100,3]}
df2 = pd.DataFrame(data=tmp2)
print(df)
0 1 2
0 0 1 2
1 3 4 5
2 6 7 8
3 9 10 11
print(df2)
a b c
0 3 4 5
1 100 4 100
2 101 100 3
我想验证 的行df2
是否与 的任何行匹配 df
,即我想获得一系列(或数组)的布尔值来给出这个结果:
0 True
1 False
2 False
dtype: bool
我认为类似该方法的isin
方法应该可以工作,但是我得到了这个结果,这导致了一个数据框并且是错误的:
print(df2.isin(df))
a b c
0 False False False
1 False False False
2 False False False
作为一个约束,我不希望使用该merge
方法,因为我所做的实际上是在应用合并之前检查数据。感谢您的帮助!