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

如何在Python DataFrame中按相同列高效合并两个数据框?

如何高效合并两个Pandas DataFrame得到目标结果?

原始数据

df1:

A            ANTS         AGE
0            ABC           18
1            ABC           25
3            ABC           24   
2            DEF           20

df2:

ANTS          LOC
ABC           WIND
DEF           FIND

期望结果

合并后得到df3:

A            ANTS         AGE    LOC
    0            ABC           18    WIND 
    1            ABC           25    WIND
    3            ABC           24    WIND
    2            DEF           20    FIND

解决方案

直接用Pandas的merge()方法,以ANTS列为连接键做左连接即可,能保留df1的所有行,并匹配df2中对应ANTS的LOC值:

import pandas as pd

# 假设df1和df2已创建
df3 = df1.merge(df2, on='ANTS', how='left')

说明

  • on='ANTS':指定两个DataFrame用于匹配的共同列名
  • how='left':采用左连接逻辑,保留左表(df1)的所有记录,右表(df2)仅匹配对应行的内容。由于你的df1中所有ANTS值都能在df2找到,用内连接how='inner'结果也一致,但左连接更稳妥,可避免df1存在df2没有的ANTS值时丢失行。

运行上述代码后即可得到目标df3。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 04:42:37