数据有「缺失值」别乱填!3 种正确处理方式,让结果更可靠
收集数据时,缺失值几乎无法避免:患者填问卷时漏填 “学历”,随访时打电话没人接导致 “血压值” 没记录,实验室检测时样本污染导致 “血脂数据” 缺失…… 很多人会直接做两件事:要么把有缺失值的行删掉(行删除法),要么随便填个 “平均值”—— 这两种做法都会严重扭曲结果!
先说说错误做法的危害:比如你收集了 200 例糖尿病患者数据,其中 30 例漏填 “糖化血红蛋白”(HbA1c),如果直接删掉这 30 例,样本量只剩 170,可能会丢失 “老年患者更易漏填 HbA1c” 的信息,导致样本偏倚;如果直接填 “所有患者的 HbA1c 均值 7.5%”,但漏填的患者可能其实是 HbA1c 偏高的人群,填均值会让结果偏低,完全不准。
教你 3 种专业处理方法,按缺失率选:
- 少量缺失(缺失率<5%):用「简单填充法」,快速且影响小。
- 计量资料(如血压、HbA1c):填 “该组的中位数”(比均值更抗极端值,比如某组有个患者血压 200mmHg,用均值会拉高,用中位数更合理);
- 计数资料(如性别、学历):填 “该组的众数”(比如某组里 “高中” 学历的人最多,就填 “高中”)。
- 中度缺失(缺失率 5%-20%):用「多重插补法(MICE)」,这是目前最推荐的方法。它不是填一个值,而是通过统计模型(比如用年龄、体重、其他检测指标预测缺失的 HbA1c)生成 5-10 个合理的缺失值,再分别分析这 10 组数据,最后合并结果 —— 相当于 “让数据自己补全自己”,准确性高。SPSS 里操作很简单:在 “分析” 菜单找 “缺失值分析”,选 “多重插补”,跟着向导走就行,不用写代码。
- 大量缺失(缺失率>20%):别硬填!两种处理方式:
- 如果这个指标不是核心变量(比如研究 “降压药效果”,缺失的是 “职业”),直接在论文里说明 “该指标缺失率 25%,未纳入分析”;
- 如果是核心变量(比如缺失的是 “血压值”),只能补充收集数据,比如联系失访的患者,或者扩大样本量,否则结果不可靠。