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

如何用Python Pandas合并CSV:匹配列关联+保留不匹配行填充N/A

解决方案:Pandas实现CSV左连接并填充缺失值

你需要的是**左连接(left join)**保留发货记录的所有行,再将匹配不到的字段填充为"N/A"。以下是完整的可运行代码:

import pandas as pd

# 读取两个CSV文件
shipments = pd.read_csv('shipments.csv')
products = pd.read_csv('products.csv')

# 执行左连接,基于product_code字段
merged_df = pd.merge(
    shipments,
    products,
    on='product_code',
    how='left'  # 关键:保留左表(shipments)的所有行
)

# 将缺失值填充为"N/A"
merged_df.fillna('N/A', inplace=True)

# 保存合并后的结果到新CSV
merged_df.to_csv('merged_shipments.csv', index=False)

关键步骤说明:

  1. 左连接设置:how='left'确保shipments.csv的每一行都会被保留,哪怕在products.csv中找不到匹配的product_code。
  2. 缺失值填充:fillna('N/A')会把合并后description和category列中的空值(NaN)替换成指定的"N/A"。inplace=True直接修改原DataFrame,避免创建新对象。
  3. 保存结果:to_csv的index=False参数避免把DataFrame的索引列写入CSV,符合你预期的输出格式。

运行这段代码后,生成的merged_shipments.csv就会和你给出的预期输出完全一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 14:50:55