この関数mice::pool(object)
は、「ルービンの規則」を使用してスカラー estimand の推定値と標準誤差を単純に計算しました。これは、推定値がしばしば を使用して抽出されるという事実に依存しておりcoef(object)
、これらの推定値の標準誤差は通常 の対角線で利用できますvcov(object)
。とメソッドがきちんと定義されlm
ているのようなクラスのオブジェクトで使用することを意図しています。coef
vcov
あなたの例では、ルービンのルールは適用されません。分割表のエントリの「推定値」と「標準誤差」は何ですか? このため、pool
は、 から係数を抽出する方法がないことを訴えていますfit
。
したがって、「推定」が単に「平均」の分割表であると想定される場合は、次のようにしてください。
library("mice")
imp <- mice(nhanes)
fit <- with(imp, table(bmi, hyp))
est <- pool(fit)
# dimensions
nl <- length(fit$analyses)
nr <- nrow(fit$analyses[[1]])
nc <- ncol(fit$analyses[[1]])
# names
rnames <- rownames(fit$analyses[[1]])
cnames <- colnames(fit$analyses[[1]])
# cast list to array
fit.arr <- array(unlist(fit$analyses), dim=c(nr,nc,nl),
dimnames=list(rnames,cnames))
# get "mean" contingency table
apply(fit.arr, 1:2, mean)
# 1 2
# 20.4 1.8 0.0
# 21.7 1.4 0.0
# 22 1.4 0.2
# 22.5 1.8 0.4
# 22.7 1.2 0.4
# 24.9 1.2 0.0
# 25.5 1.0 1.6
# 26.3 0.0 1.0
# 27.2 0.4 1.0
# 27.4 1.4 0.4
# 27.5 1.6 0.2
# 28.7 0.0 1.0
# 29.6 1.0 0.2
# 30.1 1.8 0.2
# 33.2 1.0 0.0
# 35.3 1.2 0.2
ただし、「平均」テーブルが役立つかどうかは、おそらく議論の余地があります。