我们在临床做回顾性研究分析中经常要面对数据缺失的问题,如果数据缺失量大就会对我们的研究结果产生影响,近年来,对数据进行多重插补广泛应用于SCI论文中。我们在之前的文章中已经演示了使用SPSS对数据进行多重插补并分析。今天,我们通过使用R语言的Mice包来演示多重插补并对数据进行分析。 我们使用R语言survival包自带的mgus数据集来进行演示 先把数据导入 library(survival) library(rms) data(package=“survival”) data(“mgus”) head(mgus) bc<-mgus
查看数据,发现存在许多缺失值
导入mice包,对缺失值进行分析
表和图是一样的,表示完全没有缺失的有46个,pcdx pctime 这两个有缺失的有130个,creat缺失的有8个 使用mice进行插补并查看数据,我们可以看到原来缺失的地方已经被插补了数据 imp<-mice(bc) complete(imp)
查看一下数据插补的情况,蓝色是原始数据,红色是插补数据,可以看到,比较重合,说明插补得很好 stripplot(imp,pch=19,cex=1.2,alpha=.3)
最后进行回归分析,很多人不懂怎么使用插补后的数据,其实都是一样进行回归 fit<-with(imp,glm(death~age+sex+dxyr+pcdx,family = binomial)) 这里生成了5套回归数据 Fit
最后把5套数据的统计值合并就可以了 fit1<-pool(fit) summary(fit1) 得出最终结果就可以进行分析了
|
请发表评论