小P学长
小P学长

脏数据清洗与质量审计(Pandas):从问题定位到结果验收

拿到 CSV/Excel 后不知道缺失值、重复行、异常类型和主键冲突在哪里,清洗过程又无法复现。本文给出一条不依赖付费工具的排查和执行路径,并说明什么时候才需要进一步使用模板。

这个问题为什么经常做错

拿到 CSV/Excel 后不知道缺失值、重复行、异常类型和主键冲突在哪里,清洗过程又无法复现。

很多项目失败并非缺少更复杂的算法,而是输入口径、验证方式、版本环境和验收标准没有在开始前写清楚。下面先用一条最小闭环完成验证,再决定是否扩大投入。

一条可复现的解决路径

  1. 第 1 步:先复制原始数据并计算文件哈希。完成后立即保存输入、配置和输出摘要,不要等到最后再补记录。
  2. 第 2 步:生成字段类型/缺失率/唯一率画像。完成后立即保存输入、配置和输出摘要,不要等到最后再补记录。
  3. 第 3 步:按业务规则处理重复、空值和类型。完成后立即保存输入、配置和输出摘要,不要等到最后再补记录。
  4. 第 4 步:输出 rejected_rows 供人工复核。完成后立即保存输入、配置和输出摘要,不要等到最后再补记录。
  5. 第 5 步:保存 clean.csv 与 audit.json。完成后立即保存输入、配置和输出摘要,不要等到最后再补记录。

开始前先准备这四样东西

  • 一份只读的原始输入或最小测试样例
  • 当前运行环境、依赖版本和系统信息
  • 你真正关心的结果指标与容许误差
  • 失败时停止、回滚和人工复核的条件

高频错误与修正

不要用均值无脑填补所有缺失值

遇到这一情况时,先缩小到能人工核验的样例,打印中间结果,再逐步恢复完整数据。不要只通过调整参数掩盖输入或定义错误。

主键去重前先定义保留规则

遇到这一情况时,先缩小到能人工核验的样例,打印中间结果,再逐步恢复完整数据。不要只通过调整参数掩盖输入或定义错误。

日期解析失败行必须单独留档

遇到这一情况时,先缩小到能人工核验的样例,打印中间结果,再逐步恢复完整数据。不要只通过调整参数掩盖输入或定义错误。

如何判断已经完成

至少满足以下条件再宣称任务完成:

  • 原始文件不被覆盖
  • 清洗前后行数可对账
  • 每个删除或改写规则可追溯
  • 脚本重复运行结果一致

此外,还应让另一台机器或一个全新目录按照 README 从零运行一次。只有“结果可重现、错误可定位、输出可解释”,才算形成可交付成果。

需要完整模板时怎么办

跑一次脚本即可输出字段画像、问题清单、清洗后数据和审计报告,保留每一步修改依据。对应的完整资料包提供可修改模板、专项检查表、验收标准与官方来源说明。只需要理解思路时,本文已经足够;需要节省搭建时间、直接在样例上验证时,再考虑购买。

官方资料入口

本文根据公开官方资料独立整理,不包含第三方付费教程、论文全文或受限数据集。工具版本会变化,实际使用时请再次核对官方当前文档。