使用鼠标包进行多重插补

问题描述

我不是 R 用户,但我只使用 R 来使用 mouse 包进行多次插补。由于我将 R 从版本 3.6.3 更新到版本 4.0.4,当我将其从 R 调用到 STATA 时,我遇到了估算数据的问题。问题是当我运行生存分析时,所有受试者都被视为死亡(状态 = 1),而状态变量包括(活着和死亡)。如果您检查我的 R 代码,我将不胜感激。我已将此平台的变量命名为 var1、var2、var3、var4。这是我的 R 脚本

library (MASS)
library (lattice)
library(splines)
library(survival)
library (Rcpp)
library (mice)

#reading data 
hla=read.dta("R:/mypath")

attach(dataname)
names(dataname)

#create data frame 
dataframe=data.frame(var1,var2,var3,var4,na) 

names(dataframe)

#generate automatic prediction matrix
predmatrix=quickpred(dataframe)
predmatrix

#ImputationSettings
maxIter=20
imputations=10

#Imputation settings
#set timer on
ptm=proc.time()      

imp10=mice(dataframe,m=imputations,maxit=maxIter,method=c(
"",#var1
"pmm",#var2
"pmm",#var3
"logreg",#var4
""),#na

predictorMatrix=predmatrix,seed=100)

#extract original and imputed data in long form
ImputedData=complete(imp10,action="long",include=TRUE)
#export data to Stata file
write.dta(ImputedData,"R:/mypath/data.dta")```

解决方法

语法正确,问题出在从 R 调用估算数据到 STATA 时。需要对一些分类变量进行记录和重新标记。