我有两个独立的pandas数据帧(df1和df2),它们有多个列,但只有一个是共同的('text').
我想找到在列的任何行中df2没有匹配df2且df1具有共同点的每一行.
DF1
A B text
45 2 score
33 5 miss
20 1 score
Run Code Online (Sandbox Code Playgroud)
DF2
C D text
.5 2 shot
.3 2 shot
.3 1 miss
Run Code Online (Sandbox Code Playgroud)
结果df(删除包含未命中的行,因为它出现在df1中)
C D text
.5 2 shot
.3 2 shot
Run Code Online (Sandbox Code Playgroud)
是否可以isin在此方案中使用该方法?
Ami*_*ory 29
正如你所问,你可以有效地使用它isin(不需要使用昂贵的merges).
>>> df2[~df2.text.isin(df1.text.values)]
C D text
0 0.5 2 shot
1 0.3 2 shot
Run Code Online (Sandbox Code Playgroud)