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

DataFrame多列匹配左连接实现方法咨询

基于多列匹配的DataFrame左连接最优方案

完全没必要创建合并列,pandas的merge方法原生支持直接指定多个列作为连接键,这是最简洁高效的实现方式,具体如下:

核心实现代码

假设你使用的是pandas库,直接调用merge方法,指定连接方式为left,并将Name和Type作为连接列传入on参数即可:

import pandas as pd

# 示例数据集(可替换为你实际的DF1、DF2)
DF1 = pd.DataFrame({
    'Name': ['Alice', 'Bob', 'Charlie'],
    'Type': ['A', 'B', 'A'],
    'Score': [85, 90, 78]
})

DF2 = pd.DataFrame({
    'Name': ['Alice', 'Bob', 'David'],
    'Type': ['A', 'B', 'A'],
    'Rank': [1, 2, 3]
})

# 执行左连接
result_df = pd.merge(DF1, DF2, on=['Name', 'Type'], how='left')

该方案的优势

  • 代码更简洁:无需额外编写字符串拼接逻辑生成合并列,一步完成连接操作
  • 避免潜在错误:如果Name或Type中包含分隔符(如下划线、逗号),拼接合并列会导致匹配失误,多列直接连接完全不存在这个问题
  • 性能更高效:省去了创建中间列的内存开销和计算时间,处理大型数据集时优势更明显

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 13:45:26