Pools univariate estimates of m repeated complete data analysis

pool.scalar(Q, U, n = Inf, k = 1)

Arguments

Q

A vector of univariate estimates of m repeated complete data analyses.

U

A vector containing the corresponding m variances of the univariate estimates.

n

A number providing the sample size. If nothing is specified, an infinite sample n = Inf is assumed.

k

A number indicating the number of parameters to be estimated. By default, k = 1 is assumed.

Value

Returns a list with components.

m:

Number of imputations.

qhat:

The m univariate estimates of repeated complete-data analyses.

u:

The corresponding m variances of the univariate estimates.

qbar:

The pooled univariate estimate, formula (3.1.2) Rubin (1987).

ubar:

The mean of the variances (i.e. the pooled within-imputation variance), formula (3.1.3) Rubin (1987).

b:

The between-imputation variance, formula (3.1.4) Rubin (1987).

t:

The total variance of the pooled estimated, formula (3.1.5) Rubin (1987).

r:

The relative increase in variance due to nonresponse, formula (3.1.7) Rubin (1987).

df:

The degrees of freedom for t reference distribution by the method of Barnard-Rubin (1999).

fmi:

The fraction missing information due to nonresponse, formula (3.1.10) Rubin (1987).

Details

The function averages the univariate estimates of the complete data model, computes the total variance over the repeated analyses, and computes the relative increase in variance due to nonresponse and the fraction of missing information.

References

Rubin, D.B. (1987). Multiple Imputation for Nonresponse in Surveys. New York: John Wiley and Sons.

See also

Author

Karin Groothuis-Oudshoorn and Stef van Buuren, 2009

Examples

# example with manual and automatic pooling imp <- mice(nhanes, maxit = 2, m = 2, print = FALSE, seed = 18210) fit <- with(data = imp, lm(bmi ~ age)) # manual pooling summary(fit$analyses[[1]])
#> #> Call: #> lm(formula = bmi ~ age) #> #> Residuals: #> Min 1Q Median 3Q Max #> -6.1587 -3.0674 0.9413 2.3870 8.7413 #> #> Coefficients: #> Estimate Std. Error t value Pr(>|t|) #> (Intercept) 28.1043 1.8853 14.91 2.61e-13 *** #> age -1.5457 0.9723 -1.59 0.126 #> --- #> Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 #> #> Residual standard error: 3.957 on 23 degrees of freedom #> Multiple R-squared: 0.099, Adjusted R-squared: 0.05983 #> F-statistic: 2.527 on 1 and 23 DF, p-value: 0.1255 #>
summary(fit$analyses[[2]])
#> #> Call: #> lm(formula = bmi ~ age) #> #> Residuals: #> Min 1Q Median 3Q Max #> -7.3611 -3.6333 0.9389 2.3389 7.5389 #> #> Coefficients: #> Estimate Std. Error t value Pr(>|t|) #> (Intercept) 29.189 2.019 14.460 4.92e-13 *** #> age -1.428 1.041 -1.371 0.183 #> --- #> Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 #> #> Residual standard error: 4.236 on 23 degrees of freedom #> Multiple R-squared: 0.0756, Adjusted R-squared: 0.03541 #> F-statistic: 1.881 on 1 and 23 DF, p-value: 0.1835 #>
pool.scalar(Q = c(-1.5457, -1.428), U = c(0.9723^2, 1.041^2), n = 25, k = 2)
#> $m #> [1] 2 #> #> $qhat #> [1] -1.5457 -1.4280 #> #> $u #> [1] 0.9453673 1.0836810 #> #> $qbar #> [1] -1.48685 #> #> $ubar #> [1] 1.014524 #> #> $b #> [1] 0.006926645 #> #> $t #> [1] 1.024914 #> #> $df #> [1] 20.97025 #> #> $r #> [1] 0.01024122 #> #> $fmi #> [1] 0.09272831 #>
# automatic pooling using broom pool(fit)
#> Class: mipo m = 2 #> term m estimate ubar b t dfcom df #> 1 (Intercept) 2 28.646618 3.814682 0.588114658 4.696854 23 10.72144 #> 2 age 2 -1.486715 1.014543 0.006947187 1.024964 23 20.96937 #> riv lambda fmi #> 1 0.2312570 0.18782190 0.30620278 #> 2 0.0102714 0.01016697 0.09275848