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

查找两个CSV文件公共id_no并合并生成目标CSV的技术问询

CSV合并实现方案

功能说明

对共有id_no字段的两个CSV文件a、b做合并,id_no匹配时同步两个文件的字段值,未匹配的缺失字段填充为0,最终输出保留a文件的全部id_no记录。

方法1:Python Pandas实现(通用跨平台)

先安装依赖:

pip install pandas

执行代码:

import pandas as pd

# 读取两个输入CSV
df_a = pd.read_csv("a.csv")
df_b = pd.read_csv("b.csv")

# 左连接,保留a的所有id_no,匹配b的字段
df_result = pd.merge(df_a, df_b, on="id_no", how="left")

# 未匹配的A1字段填充为0
df_result["A1"] = df_result["A1"].fillna(0)

# 导出结果CSV,不输出索引列
df_result.to_csv("c.csv", index=False)

如果需要同时保留a、b两个文件的所有id_no,把merge的how参数改为how="outer",再对a文件的字段也做填充0处理即可。


方法2:Linux Awk命令行实现(无需Python环境)

适用于制表符分隔的CSV:

awk 'BEGIN{FS=OFS="\t"} NR==FNR{if(NR>1) a[$1]=$2; next} FNR==1{print $0,"A1"; next} {print $0, ($1 in a ? a[$1] : 0)}' b.csv a.csv > c.csv

如果是逗号分隔的CSV,将开头的FS=OFS="\t"修改为FS=OFS=","即可。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 21:06:05