质量数据准备层(quality-data-prep)· 标准数据集制备
能力
扫描任意目标文件夹下杂乱的 Excel / CSV(多部门、多列名、多日期格式、编码不一致), 按业务映射规则自动识别来源,结构化清洗、校验、合并,输出为固定 schema 的标准事实表 CSV, 供质量看板(独立 HTML)直接消费。
这是「原始数据 → 标准数据」这一环的执行器:看板只认标准 CSV,本技能负责把乱数据变成标准数据。
何时使用
- 用户将一批原始质量文件(生产 / 质检 / 来料等)放入某个文件夹,需要整理成统一标准数据。
- 看板需要刷新,但当前标准 CSV 已过时,需要从原始文件重新制备。
标准输出 schema(写死,不可根据输入动态推断)
| 字段 | 含义 | 类别 | |---|---|---| | date | 日期 | 语义/度量 | | workshop / line / shift / product | 车间 / 产线 / 班次 / 产品 | 维度 | | source_dept | 来源部门 | 维度 | | inspected / defect / scrap / rework | 检验数 / 不良数 / 报废数 / 返工数 | 语义/度量 | | defect_type | 缺陷类型 | 维度(明细行) | | severity | 严重度(Critical / Major / Minor) | 维度 | | cause | 5M1E 归因 | 维度 |
- 保留列(语义/度量,看板计算依赖):
date / inspected / defect / scrap / rework / defect_type - 其余列 = 维度,看板按 CSV 表头自动生成筛选与下钻项。
输入映射配置(业务规则集中维护)
mapping.yaml 集中定义各来源的:
column_map:源文件列名 → 标准字段value_map:班次 / 严重度 / 缺陷类型 的编码 → 标准值date_format:该来源的日期解析格式
新增来源 / 改口径:只改 mapping.yaml,不碰代码。
工作流(含交互锁)
- 确认目标文件夹:向用户索取原始数据所在文件夹路径(或确认默认位置
D:/Workbuddy/项目演示/质量看板演示/原始数据)。 - 核对映射覆盖:列出
mapping.yaml中已配置的来源;若目标文件来源不在映射内,先与用户确认补充映射,再继续——不要臆测列含义。 - 执行提取:
python skills/quality-data-prep/extract.py --src <目标文件夹> --out <标准CSV> --mapping skills/quality-data-prep/mapping.yaml - 核验输出:报告总行数、各来源分布、被跳过 / 未匹配的文件清单;提醒用户用看板「选择数据文件」加载新 CSV。
- (可选)回归校验:跑
D:/Workbuddy/项目演示/质量看板演示/构建脚本/verify_dashboard.py确认标准数据与看板一致。
强制约束
- 输出字段固定为上述 13 列,不根据输入动态增减。
- 未匹配到来源规则的文件,必须显式列出并跳过,绝不臆测列含义或强行归入。
- 校验栏脏:丢弃日期缺失 / 检验数 ≤ 0 的行;缺陷类型缺失归「其他」。
- 不修改原始文件,只产出新的标准 CSV。
- 扫描支持子目录递归;支持
.xlsx / .xls / .csv。
微信扫一扫