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

如何使用Pandas对比两个CSV文件删除sku匹配的重复记录

问题解决方案

原有代码未生效主要是两个常见数据预处理问题导致的匹配失败:

  • csv2的sku列存在多余的前导/尾随空白字符,和csv1的sku字面量不匹配
  • 未处理可能存在的sku大小写差异(若业务中sku为大小写不敏感的标识符需要额外处理)

完整实现代码

import pandas as pd

# 读取两个csv文件,若字段为多空格分隔可加sep='\s+'参数,存在行内注释可加comment='#'参数
csv1 = pd.read_csv('csv1的本地文件路径')
csv2 = pd.read_csv('csv2的本地文件路径')

# 清洗sku列:去除前后空白,可选统一大小写
csv1['sku_clean'] = csv1['sku'].str.strip().str.upper()
csv2['sku_clean'] = csv2['sku'].str.strip().str.upper()

# 过滤出csv2中不在csv1里的记录
csv2_updated = csv2[~csv2['sku_clean'].isin(csv1['sku_clean'])]

# 删除临时清洗列,导出结果,index=False避免生成多余的索引列
csv2_updated = csv2_updated.drop(columns=['sku_clean'])
csv2_updated.to_csv('结果保存的本地路径', index=False)

补充说明

  • 如果业务中sku是大小写敏感的,去掉.str.upper()这部分即可
  • 若不需要保留原始sku的空格/大小写格式,也可以直接覆盖原sku列,不需要额外生成sku_clean临时列

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 06:36:03