【问题标题】:Subtracting rows of dataframe A from dataframe B python pandas [duplicate]从数据框B python pandas中减去数据框A的行
【发布时间】:2017-04-15 12:02:03
【问题描述】:

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

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

问题是,我想确保 DataFrame A 中的记录不在 DataFrame B 中,即从 DataFrame A 中“减去”DataFrame B。我该怎么做?

到目前为止,我一直在为两个 DataFrame 添加一个名为“组”的额外列,使用 pd.merge(A, B, how='left', on='col) 将它们合并,然后取出以 'group_x''group_y' 的两个不同值结束的列(合并创建了这两个组。

有没有更简单的方法?我尝试了很多方法,但都没有奏效。

【问题讨论】:

标签: python pandas merge


【解决方案1】:

是的,您的方式没问题,如果您不需要合并的数据框,您也可以执行dfA.ix[!dfA.col.isin(dbB.col)] 之类的操作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-01-08
    • 2019-08-19
    • 1970-01-01
    • 2023-03-06
    • 1970-01-01
    • 2013-06-03
    • 2019-03-08
    相关资源
    最近更新 更多