You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何检查两个Pandas DataFrame是否已执行指定左连接合并?

检查DataFrame是否已按索引左合并的简洁方法

Nice question! 针对你这种「原df和df2无共同列名,可能已执行过df.merge(df2, how='left', left_index=True, right_index=True)」的场景,这几个超简洁的检查方式直接能用:

  • 列成员验证法(最推荐):因为原数据没有重复列名,只要当前df包含df2的所有列,就说明已经完成合并。一行代码就能得到结果:

    set(df2.columns).issubset(df.columns)
    

    返回True就是已经合并,False则未合并。

  • 列数对比法:如果你记得原df的列数(比如原df有5列,df2有3列),直接对比当前df的列数是否等于两者之和:

    len(df.columns) == 原df列数 + len(df2.columns)
    

    这种适合你能准确回忆原始列数的场景,简单粗暴。

  • 快速直观检查:想快速肉眼确认的话,直接打印df的列名或前几行数据:

    # 查看所有列名
    print(df.columns)
    # 查看前5行数据
    df.head()
    

    要是能看到df2的列(哪怕部分值是NaN,毕竟是左连接),就说明合并已经完成。

小补充:因为是按索引的左连接,合并后df的行数和原df完全一致,所以行数对比没有参考价值,列的变化是最核心的判断标志~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 08:32:23