【问题标题】:Gathering object (MICE output for five imputed datasets)?收集对象(五个估算数据集的 MICE 输出)?
【发布时间】:2020-10-26 22:52:50
【问题描述】:

我正在使用 MICE 在多级模型中估算数据。然后我使用 MICE 中的“with()”函数使用 lmer() 进行多级分析。第一个数据集着眼于总犯罪率。然后我对犯罪类型进行另一组分析,因此收集了暴力犯罪和财产犯罪。最初,对于第二个数据集,我想在估算之前收集财产和暴力犯罪,然后估算预测变量,但这需要 FOREVER(超过 20 小时)。有没有办法收集 MICE 输出(下面的mice.crime),以便我可以对暴力和财产犯罪值进行建模?

非常感谢!

这是一个可重复的例子,本质上,我只是想收集暴力和财产犯罪:

library(mice)
df.1 <- data.frame(place_id = as.integer(seq (1:n)),
property_crime = as.numeric(sample(c(20:90), n, rep = TRUE)),
violent_crime = as.numeric(sample(c(20:90), n, rep = TRUE)),
med_income = sample(c(20:90), n, rep = TRUE))%>%
  mutate(crime_total = property_crime + violent_crime)

df <- apply(subset(df.1,select=-c(place_id, property_crime, violent_crime, crime_total)), 2, function(x)
     {x[sample(c(1:n),floor(n/10))]<-NA; x}) 
df.1 <- df.1%>%select(-(med_income))
df <- cbind(df.1, df)

impmethod.1 <- character(ncol(df))
names(impmethod.1) <- colnames(df)
impmethod.1[c("med_income")] <- "2l.lmer" 
impmethod.1[c("place_id", "property_crime", "violent_crime", "crime_total")] <- ""
impmethod.1

pm <- make.predictorMatrix(df)
pm["place_id",] <- -c(0,0,0,0,2)
pm["property_crime",] <- -c(-2,0,0,0,2)
pm["violent_crime",] <- -c(-2,0,0,0,2)
pm["crime_total",] <- -c(-2,0,0,0,2)
pm["med_income",] <- -c(-2,0,0,0,0)

mice.crime <- mice(df, m=5, predictorMatrix = pm,
                    method=impmethod.1, maxit=10, printFlag = FALSE, seed=1874)

【问题讨论】:

    标签: r dplyr reshape2 r-mice


    【解决方案1】:

    我在这里回答了我的问题......希望我可以在这里实施 MICE 包的任何人有很多时间和挫败感。 MICE 套餐很棒。它经过深思熟虑且用途广泛。而“with()”函数——可以通过多级或多级回归轻松合并五个单独的数据集——就是其中的象征。但是,如果您打算使用 sjPlot(另一个令人惊叹的、经过深思熟虑的软件包)来绘制效果大小,或者您想要交叉验证您的发现;我会在插补后停止使用 MICE 并切换到 sjMisc 包(Daniel Ludecke 的另一个包),它有一个“merge_imputations()”函数,它将获取插补向量并将它们与您的初始数据集合并。更多关于这里的齿轮:https://www.rdocumentation.org/packages/sjmisc/versions/2.8.4/topics/merge_imputations(这实际上是我发现的唯一一个有有用示例的 R 文档之一)。因此,您现在拥有一个包含估算值的数据集,您可以继续使用 lme4(和/或用于交叉验证的细分)或您正在执行的任何回归。

    从统计学上讲,我认为“with()”函数更好,因为它采用五个单独的估算数据列表,并在估算时将它们与原始数据集合并,但实际上,如果你想绘制或交叉验证,你最终会走上一条死胡同。直到有人对该问题发布更充分的统计或计算答案,希望这可以帮助您避免走上我已经走的路。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-11-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-01
      • 1970-01-01
      • 2021-09-26
      相关资源
      最近更新 更多