我有以下数据框:
symbol, name
abc Jumping Jack
xyz Singing Sue
rth Fat Frog
然后我有另一个具有相同结构的数据帧(符号+名称)。我需要输出第一个数据帧而不是第二个数据帧中的所有符号。
允许名称列不同。例如,我可以在两个数据帧中都有
symbol = xyz
,但名称不同。那很好。我只是想得到两个数据帧中都没有出现的symbols
。我确信这可以使用pandas merge来完成,然后输出没有合并的行,但是我似乎无法正确处理。
最佳答案
使用isin
并使用~
否定条件:
df[~df['symbol'].isin(df1['symbol'])]
这将返回第一个df中存在'symbol'而不是另一个df中的行