我使用 R 中的 mouse 包估算了一个数据。数据集包含一个因子变量,具有 n 个因子水平。我想计算每个因素的比例并返回计算估算值的标准误差。下面是一个示例代码。
data(nhanes)
nhanes$hyp <- as.factor(nhanes$hyp)
imp <- mice(nhanes,method=c("polyreg","pmm","logreg","pmm"), seed = 23109)
m <- imp$m
Q <- rep(NA, m)
U <- rep(NA, m)
for (i in 1:m) {
Q[i] <- mean(complete(imp, i)$hyp)
U[i] <- var(complete(imp, i)$hyp) / nrow(nhanes) # (standard error of estimate)^2
}
pool.scalar(Q, U, method = "rubin") # Rubin 1987
这将显示以下结果:
> pool.scalar(Q, U, method = "rubin") # Rubin 1987
$m
[1] 5
$qhat
[1] NA NA NA NA NA
$u
[1] 0.006666667 0.009066667 0.008400000 0.009066667 0.006666667
$qbar
[1] NA
$ubar
[1] 0.007973333
$b
[1] NA
$t
[1] NA
$r
[1] NA
$df
[1] NA
$fmi
[1] NA
$lambda
[1] NA
如何修改我的代码,以便它为我提供 pool.scalar 返回的所有组件的值?
谢谢!