Python 从数据帧B中减去数据帧A的行

Python 从数据帧B中减去数据帧A的行,python,pandas,merge,Python,Pandas,Merge,我有两个数据帧,我们称它们为A和B。它们有完全相同的7列(我们称它们为col1、col2、col3、col4、col5、col6和col7)。有些栏目包括客户id、客户名、客户姓、电话号码等(出于保密目的,我无法透露确切的姓名) 数据帧A比数据帧B大得多,数据帧B中的一些条目包含在数据帧A中(即数据帧B是数据帧A的子集) 问题是,我想确保数据帧A中的记录不在数据帧B中,即从数据帧A中“减去”数据帧B。我该如何做 到目前为止,我已经为这两个数据帧添加了一个名为“组”的额外列,使用pd.merge(

我有两个数据帧,我们称它们为A和B。它们有完全相同的7列(我们称它们为col1、col2、col3、col4、col5、col6和col7)。有些栏目包括客户id、客户名、客户姓、电话号码等(出于保密目的,我无法透露确切的姓名)

数据帧A比数据帧B大得多,数据帧B中的一些条目包含在数据帧A中(即数据帧B是数据帧A的子集)

问题是,我想确保数据帧A中的记录不在数据帧B中,即从数据帧A中“减去”数据帧B。我该如何做

到目前为止,我已经为这两个数据帧添加了一个名为“组”的额外列,使用
pd.merge(A,B,how='left',on='col)
将它们合并,然后取出那些最后为
'group\u x'
'group\u y'
使用两个不同值的列(合并创建了这两个组)


有更简单的方法吗?我尝试了很多方法,但都没有成功。

是的,你的方法还可以,如果你不需要合并的数据帧,你也可以做类似于
dfA.ix[!dfA.col.isin(dbB.col)]

检查这个答案: