R语言进行多重插补-基于R语言的mice包的理论介绍

学术   2024-08-11 23:24   陕西  




01

理论介绍






本文介绍一些多重插补的基本理论知识。


(一)完全变量和不完全变量

完全变量:不含缺失值的变量;

不完全变量:含有缺失值的变量。

     

(二)数据缺失类型

数据缺失的类型包括完全随机缺失、随机缺失、非随机缺失三种情况。

1.完全随机缺失(missing completely at random,MCAR):数据的缺失是随机的,数据的缺失不依赖于任何不完全变量或完全变量。也就是说缺失值与数据中已知的和未知的特征均无关

比如:调查问卷中的性别字段,是否缺失完全随机,取决于调查对象。

2.随机缺失 (missing at random,MAR):数据的缺失不是完全随机的,该类数据的缺失依赖于其他完全变量。

比如:1个教育的数据集中很多小孩的IQ分数缺失;其原因可能在于,与12岁的孩子比,4岁以下的孩子通过IQ测试的人比较少,所以4岁以下的孩子没有IQ分数。因此,这些缺失其实与IQ实际值无关,而与年龄相关。所以,IQ缺失记录主要集中在低年龄人群中。

3.非随机缺失 (missing not at random,MNAR):不完全变量中数据的缺失依赖于不完全变量自身。

比如:只有得低分个体的IQ变量值缺失;再比如高收入人群不愿意提供收入数据。也就是IQ变量缺失值依赖于IQ变量本身;收入变量的缺失依赖于收入变量本身。


(三)单一插补和多重插补    

缺失值插补的方法包括单一插补和多重插补,单一插补仅考虑了单个变量的数据特征进行填补,而多重插补则通过其他变量,通过建立模型进行预测来填补缺失值,弥补了单一插补的不足。多重填补,即MICE(链式方程多重填补),这是公认的填补流行病学缺失数据的策略,其优点是简单易行,并且可以保持无偏估计和有效推断。

这种方法假设数据是随机缺失(MAR)的,也就是缺失数据属性与观测数据相关,与缺失数据无关,在数据填补过程中,会涉及其他列的信息,通过建立线性回归或广义线性回归模型,根据已观察到的数据来填补缺失数据。


(四)R语言mice包多重插补流程

第一步:mice()函数默认生存5个填补后的数据集,由于填补过程的随机成分,这五个数据集略有差异。

第二步:with()函数可依次对插补后的5个完整数据集应用统计模型(包括线性模型和广义线性模型)

第三步:pool()函数将这些单独的分析结果整合为1组结果。最终模型的标准误和p值都将准确地反映出由于缺失值和多重插补而产生的不确定性。


(五)数据类型和多重插补模型


那么多重插补会根据自动根据数据类型建立想用的模型插补缺失数据,那么常见的数据类型有4类,如下:

连续变量:调用预测均值填补,"pmm",Predictive mean matching

二分类变量:调用logistic回归模型填补,"logreg",

Logistic regression imputation

无序多分类变量:调用无序多分类logistic回归模型填补,

"polyreg",

Polytomous regression imputation for unordered categorical 

data

有序多分类变量:调用比例优势模型填补,"polr",

Proportional odds model    


以上四种方法是多重插补默认的方法,所有的方法总结和适用数据类型如下如下:

 Any:任意类型数据

 Numeric:连续变量

 Binary:二分类

 Ordered:有序多分类

Unordered:无序多分类

方法简称

适用数据类型

方法全称

方法中文名

pmm

any

Predictive mean matching

预测均值填补

midastouch

any

Weighted predictive mean matching


sample

any

Random sample from observed values


cart

any

Classification and regression trees

分类回归树

rf

any

Random forest imputations

随机森林法

mean

numeric

Unconditional mean imputation


norm

numeric

Bayesian linear regression

贝叶斯线性回归

norm.nob

numeric

Linear regression ignoring model error


norm.boot

numeric

Linear regression using bootstrap

基于bootstrap的线性回归

norm.predict

numeric

Linear regression, predicted values

线性回归预测值

lasso.norm

numeric

Lasso linear regression

Lasso线性回归

lasso.select.norm

numeric

Lasso select + linear regression


quadratic

numeric

Imputation of quadratic terms


ri

numeric

Random indicator for nonignorable data


logreg

binary

Logistic regression

Logistic回归

logreg.boot

binary

Logistic regression with bootstrap


lasso.logreg        

binary

Lasso logistic regression

Lasso Logistic回归

lasso.select.logreg

binary

Lasso select + logistic regression


polr

ordered

Proportional odds model

比例优势模型

polyreg

unordered

Polytomous logistic regression

无序多分类模型

lda

unordered

Linear discriminant analysis


2l.norm

numeric

Level-1 normal heteroscedastic


2l.lmer

numeric

Level-1 normal homoscedastic, lmer


2l.pan

numeric

Level-1 normal homoscedastic, pan


2l.bin

binary

Level-1 logistic, glmer


2lonly.mean

numeric

Level-2 class mean


2lonly.norm

numeric

Level-2 class normal


2lonly.pmm

any

Level-2 class predictive mean matching



本期的原始数据

本期为理论介绍,下期

介绍代码和实践操作



本公众号致力于分享实用的医学科研干货和热点科研文章共享平台,如果您有任何医学科研相关问题或经验分享,可以私信我!

谢谢阅读,以上均为个人在科研实践过程中的一些做法,如有错误敬请指正!!!




End




关注我获得

更多精彩









 

流病统计与科研学习笔记
流行病与卫生统计学专业主要分享基于SAS、R以及其他统计软件实现各种统计学方法和结果绘图,提高自己的学习能力
 最新文章