You need to enable JavaScript to run this app. Python中两个DataFrame实现left excluding join左排除连接的方法
优惠活动
大模型
产品
解决方案
定价
更多

Python中两个DataFrame实现left excluding join左排除连接的方法

Pandas 左排除连接(Left Excluding Join)实现方法

针对两个带共同关联键key_id的DataFrame A、B,要保留A中不存在于B的行,有两种常用的实现方式:

  • 方案1:merge 关联过滤法(适配所有场景)
import pandas as pd
# 左连接同时标记行的来源表
merge_temp = A.merge(B, on="key_id", how="left", indicator=True)
# 筛选仅属于A的行,保留A的原始列结构
result = merge_temp[merge_temp["_merge"] == "left_only"][A.columns]

该方案兼容性最好,就算两个表除key_id外还有其他同名字段,也能正确返回A的原始数据结构。

  • 方案2:isin 快速过滤法(代码更简洁)
result = A[~A["key_id"].isin(B["key_id"])]

该方案写法简单性能高,适合仅用key_id作为唯一关联判断条件的场景。

左排除连接逻辑示意图

Left Excluding Join

内容的提问来源于stack exchange,提问作者Hugo Wolf

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.19 03:15:03