现在,我有一个像这样的DF1:
Words Words1 Words2
Shell Shocked Big Bang Theory Hot Potato
Falling Down Tiger Blood Blue Suede Shoe
A Big Window Mouse Trap
Look Around
我希望做的是做一些等效的vlookup并从DF1 中的列中删除所有出现在DF2中的单词,如下所示:
KW
Shell Shocked
Tiger Blood
Blue Suede Shoe
A Big Window
所以我会离开......
Words Words1 Words2
Falling Down Big Bang Theory Hot Potato
Look Around Mouse Trap
以下是我的尝试:
DF1 = DF1[~DF1['Words'].isin(DF2)]
DF1 = DF1[~DF1['Words1'].isin(DF2)]
DF1 = DF1[~DF1['Words2'].isin(DF2)]
这个实际上没有过滤任何东西(也许我这样做不正确)。我也尝试过:
set_B = set(onlykw.itertuples(index=False))
mask = [x not in set_B for x in A.itertuples(index=False)]
除了'True'之外什么都没有返回(我在另一个SO帖子上发现了这个,我不确定它是如何工作的)。 有没有人知道如何做到这一点?
答案 0 :(得分:0)
DF2中的列名是KW
吗?如果是这样,那么你需要
DF1 = DF1[~DF1['Words'].isin(DF2['KW'])]