Skip to contents

Combine results such as rater severity or a prespecified difference between raters across completed-data fits. Rubin's rules include uncertainty within each fit and variation between imputations. The calculation uses the full covariance for one non-Person facet; it does not pool Person ability scores.

Usage

pool_mfrm_imputed(
  x,
  facet,
  contrasts = NULL,
  ci_level = 0.95,
  df_complete = Inf
)

# S3 method for class 'mfrm_pooled'
print(x, ...)

# S3 method for class 'mfrm_pooled'
summary(object, ...)

# S3 method for class 'mfrm_pooled'
plot(
  x,
  draw = TRUE,
  preset = "standard",
  title = paste("Pooled", x$settings$facet, "estimates and contrasts"),
  subtitle = sprintf("%d imputations | %.0f%% pointwise MI intervals",
    x$settings$imputations, 100 * x$settings$ci_level),
  ...
)

Arguments

x

For pool_mfrm_imputed(): Output from fit_mfrm_imputed(). All completions must have inference-ready RSM/PCM MML fits and unregularized observed information.

For plot(): Output from pool_mfrm_imputed().

facet

A non-person facet column name, for example "Rater".

contrasts

Optional numeric matrix with one named row per target and columns named by all facet levels. For example, a row with coefficients c(1, -1, 0) estimates the first rater minus the second. Without it, each facet level is reported. Columns are aligned by level, not position.

ci_level

Confidence level, strictly between zero and one.

df_complete

Complete-data degrees of freedom, a positive number or Inf (default). Inf uses the large-sample complete-data approximation. A finite value applies the Barnard–Rubin adjustment. No residual degrees of freedom are inferred from rating-row counts: ratings within a person are not independent sampling units. A supplied finite value requires a defensible complete-data reference distribution for the chosen target.

...

Unused.

object

An object returned by pool_mfrm_imputed().

draw

Logical. With FALSE, return the exact plot data without opening a graphics device.

preset

A package plotting preset, such as "standard" or "monochrome".

title, subtitle

Optional text; NULL omits it. The default subtitle retains a notice when complete-data information is weak. Full cautions remain in the returned plot data even with custom or omitted text.

Value

An mfrm_pooled object containing table, within, between and total covariance matrices, estimates by imputation, each complete_covariance, the exact contrasts, facet_levels, settings and source analyses. MonteCarloSE is the estimated Monte Carlo SE of the pooled point estimate, sqrt(B / m); it is not its inferential SE. MissingVarianceFraction is (1 + 1/m) B / T, not the raw missing-rate. Fixed targets retain their value and zero variance, but no inferential interval or degrees of freedom. No imputation is omitted. information_review retains any numerical-refinement review at each imputation's list position. cautions identifies affected imputations; when present, InferenceCaution also accompanies the pooled table. IntervalReason distinguishes available intervals, fixed targets, numerical resolution loss and intervals outside the numeric range. An unavailable interval retains its point estimate and variance. notes records the imputation and inference assumptions for saved reuse.

For plot(): Invisibly, a ggplot object; plot_data() extracts the plotted table, exact contrast coefficients and inference settings. The plot uses the saved pointwise MI interval endpoints; it does not substitute normal intervals from the standard errors. Default and component = "table" retain the complete interval view. Target order, contrasts, degrees of freedom, confidence level and complete-data information cautions remain attached through plot_data(). Numerical interval-availability reasons and saved inference notes are retained. Both base and ggplot views show a cross for a missing interval. Fixed targets have open diamonds without intervals. In ggplot conversion, infinite endpoints have arrows (their tips are display limits, not finite bounds); missing intervals have crosses at the saved estimate. Missing point estimates cause an error rather than being placed at zero. Use source title/subtitle arguments or ggplot2::labs() to change text; hiding headings does not remove the attached inference cautions.

Details

For a common target, Qbar is the mean completed-data estimate, Ubar the mean complete-data covariance and B their between-imputation covariance. The total is T = Ubar + (1 + 1/m) B. The scalar t-reference degrees of freedom are (m - 1) / lambda^2, with lambda = (1 + 1/m) B / T, before any finite complete-data adjustment. A zero between-imputation variance has infinite large-sample degrees of freedom. Full covariances are transformed before scalar inference, so rater differences include covariance between the two estimates. The finite-data adjustment uses \(\nu_{obs}=\nu_{com}(\nu_{com}+1)/(\nu_{com}+3)\,\bar U/T\) and \(1/\nu=1/\nu_{old}+1/\nu_{obs}\). These t references are approximations, not exact finite-sample pivots for an MFRM. Positive interval widths that cannot be distinguished from zero at the returned estimate, and endpoints outside floating-point range, are withheld with a reason rather than reported as zero uncertainty or infinite bounds.

All fits must share categories, facet levels, signs, anchors, interactions and identification. Known anchors are fixed and their uncertainty is excluded. Singular or regularized free-parameter information and any failed/ineligible completion prevent pooling. A target fixed by a constraint is labelled "fixed"; it is not evidence of perfect precision. A verified unregularized inverse of ill-conditioned information can be used with a warning identifying the affected imputations. Rubin pooling does not repair unreliable complete-data approximations. Review interval widths, boundary proximity and quadrature sensitivity before interpreting the pool.

The intervals are pointwise model-based multiple-imputation intervals, conditional on adequate proper imputations and complete-data inference. They are not robust intervals, simultaneous rater decisions or general coverage guarantees. Do not pool EAPs, posterior SDs, fit statistics, cluster labels or likelihood-ratio tests with this function. See the executable assigned-score example in online response-imputation guide. It compares joint RSM predictive completions with direct observed-score inference. Proper calibration priors in the imputer and MML estimates in the completed-data analyses do not give exactly identical Bayesian moments: that interpretation is a large-sample approximation requiring review. The finite-imputation correction and MonteCarloSE assume independent completed-data draws. Repeating completions is not additional Monte Carlo evidence; correlated MCMC draws require sampling review. Identical completed values can occur legitimately and are not automatically rejected.

Congeniality concerns the imputation distribution and the complete-data analysis together, including its variance estimator. Preserving categories or including coefficient uncertainty in an ordinal imputer does not prove congeniality with an adjacent-category MFRM. Under incompatibility or model misspecification, Rubin intervals can be too narrow or too wide. Bootstrapping only the imputation-model training data, then completing and analyzing the original roster, is not bootstrap inference for the whole MI analysis. Bartlett and Hughes (2020) study the latter; their results require conditions including a consistent point estimator and appropriate resampling units. This function implements Rubin pooling, not that outer bootstrap procedure.

plot() method: Plot pooled facet estimates or prespecified contrasts

For plot(): Plots use the stored pointwise multiple-imputation intervals and preserve target order. Open diamonds identify fixed targets without an inferential interval. A zero reference line does not define a practical importance threshold. The plot does not refit, select significant raters, adjust for multiplicity or turn severity differences into rater quality.

Bounded evaluation

A joint-RSM imputation example was examined using 200 independent datasets, each analyzed with MAR and low-score-dependent MNAR missingness. The design had 80 Persons, three fixed raters, two criteria, scores 0–2, forty completions and a correctly specified known N(0,1) Person distribution. Under MAR, fixed-rater contrast coverage was 96.5 percent among 198 available nominal 95 percent intervals (95 percent Monte Carlo bounds 92.9–98.6). Two imputation posteriors missed the sampling-diagnostic threshold; counting them as unsuccessful gives 191/200 available-and-covered trials (95.5 percent). Under MNAR, coverage was 26.0 percent (Monte Carlo bounds 20.1–32.7) and bias was +0.574 logits, although both missing fractions were near 14 percent. The MAR imputer cannot correct selection depending on missing scores. These results concern that imputer, contrast and design, not arbitrary supplied completions or general coverage. See the assigned-score vignette for direct-MML/Bayesian comparisons, interval widths and failure accounting.

Session plot defaults

See mfrmr_visual_diagnostics for options(mfrmr.plot_preset), argument precedence, and appearance when saving or reusing a plot.

References

Rubin, D. B. (1987). Multiple Imputation for Nonresponse in Surveys. Wiley. Barnard, J. and Rubin, D. B. (1999). Small-sample degrees of freedom with multiple imputation. Biometrika, 86, 948–955. doi:10.1093/biomet/86.4.948 .

Bartlett, J. W. and Hughes, R. A. (2020). Bootstrap inference for multiple imputation under uncongeniality and misspecification. Statistical Methods in Medical Research, 29, 3533–3546. doi:10.1177/0962280220932189 .