数据有缺失,是一件令人不愉快的事情。然而,无论是回顾性研究还是前瞻性的研究,都可能难以避免数据缺失。那么,当你拿到了一份数据,发现其中有个别或一些缺失,你会如何处理呢?目前,可供选择的做法大概有以下两种:1.若缺失较少,且样本量较大,这时选择删除缺失的观测行,也是无伤根本的;2.若样本量不大,缺失比例也不是很小(比如5%-10%的缺失),或者无论样本量有多大,你就是不想删除这5%-10%的缺失,那么可以根据数据情况选择均值/中位数填补、K-mean填补、回归分析填补、决策树填补、随机森林填补和多重插补。上述缺失值补充的方法种的多重插补 (Multivariate Imputation by Chained Equations, MICE)相比其他方法要更加新颖和可靠,想必大家也都听说过。关于MICE的原理,不是本文的重点,这里不多做说明;本文的重点是在多重插补后的数据集上进行广义线性模型、广义相加模型、广义估计方程等广义模型的分析。
在正式进行代码演示之前,先简单介绍一下多重插补及后续分析的主要步骤和本次实践所用的示例数据。如图1(参考文献原图)所示,第一步:在原数据集的基础上进行多次填补,形成多个填补后的数据集;第二步:在每个填补后的数据集上均进行一次分析;第三步:将所有的分析结果进行合并,从而得到一个最终的结果。本次所用数据的情况见表1,是研究H病患者再入院的影响因素,readmission为因变量。
下面开始以代码配合注释的方式