质量数字化 · 可复现示例
从透视表到质量看板:先把指标口径写清楚
通过两批模拟数据,解释不良率为什么不能直接平均,以及怎样让图表回到明细。
内容性质:可复现示例。文中示例为教学用途,不包含真实企业数据;方法与配置请结合实际条件验证。
图表之前,先写一句完整定义
“本月不良率”至少要说明统计对象、日期字段、分子、分母、单位以及排除条件。例如:按首次检验完成日期统计,分子为不合格样本件数,分母为已完成首次检验的样本件数。
不合格件数与缺陷数量不是一回事,一件产品可能存在多个缺陷。统计缺陷次数时不能不加说明地称作不良品率。来料批次拒收率、样本不良比例也不能混为一个指标。
为什么两个百分比不能直接取平均
以下为模拟数据。A 批检验 100 件,其中 5 件不合格;B 批检验 900 件,其中 9 件不合格。两批合计检验 1000 件,不合格 14 件,合计比例为 1.4%。直接平均 5% 和 1% 得到 3%,把不同规模的批次当成了相同权重。
| 批次 | 检验件数 | 不合格件数 | 比例 |
|---|---|---|---|
| DEMO-A | 100 | 5 | 5% |
| DEMO-B | 900 | 9 | 1% |
| 合计 | 1000 | 14 | 1.4% |
overall_rate = sum(rejected_units) / sum(inspected_units)
# 分母为 0 时显示“无有效样本”,不要显示为 0%先清洗,再聚合
检验单与缺陷明细是一对多关系。若直接关联后求和,检验数量可能随缺陷行数重复累加。应先确定指标需要的粒度,再在正确粒度聚合,必要时先聚合缺陷明细再关联。
同一批次的首次检验与复检应有标识。若展示首次质量水平,就不能用最终复检通过结果覆盖首次记录。日期应明确采用到货、检验完成还是入库时间,并统一时区与边界。
选择能回答问题的图
趋势折线适合观察时间变化,同时展示样本量能帮助读者判断小样本波动。分类条形图适合比较缺陷类别,但应清楚区分计数与比例。看板的每个指标最好能进入对应明细,并保留当前筛选条件。
- 概览卡:显示指标值、单位、期间及样本量。
- 趋势图:同口径比较,不把缺失日期自动当成零。
- 分类图:明确排序、未知类别与其他类别的处理。
- 明细入口:能核对参与计算的原始记录。
用小数据集验算一次
随文脚本使用 Python 标准库读取两批 CSV,检查样本量和不合格件数是否合理,并计算总体比例。先用这个可以手算的数据集验证,再换成真实数据。
遇到汇总与明细不一致,依次检查关联重复、日期边界、筛选条件、复检处理和单位换算。比起先调整图表样式,找出参与计算的记录集合更有效。
python quality_metrics.py
# 预期:inspected=1000 rejected=14 rate=1.40%