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

如何自动匹配列值,将CSV的id填充至Excel的siteId列?

解决方案:用Pandas匹配CSV与Excel数据填充siteId列

实现思路

利用Pandas读取两个文件,先将CSV中code与id的对应关系转为字典(因为code对应唯一id),再通过这个字典将Excel中site列匹配到对应的id,填充到siteId列,全程保留原Excel的所有行列结构与顺序。

代码实现

import pandas as pd

# 读取CSV文件,建立code到id的映射字典
csv_data = pd.read_csv("你的文件路径/xxx.csv")
code_id_map = dict(zip(csv_data['code'], csv_data['id']))

# 读取Excel文件
excel_data = pd.read_excel("你的文件路径/MTN.xlsx")

# 填充siteId列:匹配site与code,对应填充id,无匹配则留空
excel_data['siteId'] = excel_data['site'].map(code_id_map)

# 保存修改后的Excel文件(覆盖原文件或另存为新文件)
excel_data.to_excel("你的文件路径/MTN_updated.xlsx", index=False)

关键说明

  • 使用dict(zip(...))构建映射字典,比DataFrame的merge操作更高效,尤其在处理大文件时,同时能严格保留原Excel的行顺序与所有列。
  • map()方法会自动将site列的每个值去字典中查找对应id,找不到匹配值的行会填充NaN,如果需要设置默认值,可以改成:excel_data['siteId'] = excel_data['site'].map(code_id_map).fillna(默认值)
  • 保存时设置index=False是为了避免Pandas自动添加的索引列写入Excel,保证原文件结构不变。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 15:22:13