Skip to contents

Wraps a refitted model (lm, rfit, ...) with borrowed covariance information. S3 generics vcov(), sigma(), and df.residual() dispatch to the borrowed values instead of the original model's, while coef()/terms() still fall through to the wrapped fit. The wrapper is backend-neutral: the class is prepended to whatever the refit already carries (e.g. c("imputed_model", "lm") or c("imputed_model", "rfit_prolfqua", "rfit")).

Usage

new_imputed_model(
  model,
  borrowed_vcov,
  borrowed_sigma,
  borrowed_df,
  n_observed
)

Arguments

model

model object fitted on imputed data

borrowed_vcov

matrix, borrowed variance-covariance matrix

borrowed_sigma

numeric, borrowed residual standard error / scale

borrowed_df

numeric, borrowed residual degrees of freedom

n_observed

integer, number of non-imputed observations

Value

imputed_model object

See also

Other modelling: AnovaExtractor, Contrasts, ContrastsDEqMSFacade, ContrastsDEqMSVoomFacade, ContrastsFacadeBase, ContrastsFirth, ContrastsFirthFacade, ContrastsFirthNestedFacade, ContrastsLMFacade, ContrastsLMImputeFacade, ContrastsLMMissingFacade, ContrastsLimma, ContrastsLimmaFacade, ContrastsLimmaImputeFacade, ContrastsLimmaVoomFacade, ContrastsLimmaVoomImputeFacade, ContrastsLimpaFacade, ContrastsLimpaNestedFacade, ContrastsLmerNestedFacade, ContrastsMissing, ContrastsModerated, ContrastsModeratedDEqMS, ContrastsPlotter, ContrastsRLMFacade, ContrastsROPECA, ContrastsROPECANestedFacade, ContrastsRfitFacade, ContrastsRfitImputeFacade, ContrastsTable, INTERNAL_FUNCTIONS_BY_FAMILY, LR_test(), Model, ModelFirth, ModelLimma, StrategyLM, StrategyLimma, StrategyLimpa, StrategyLmer, StrategyLogistf, StrategyRLM, StrategyRfit, build_contrast_analysis(), build_model(), build_model_glm_peptide(), build_model_glm_protein(), build_model_impute(), build_model_limma(), build_model_limma_impute(), build_model_limma_voom(), build_model_limma_voom_impute(), build_model_limpa(), build_model_logistf(), compute_borrowed_variance(), compute_borrowed_variance_limma(), compute_contrast(), compute_lmer_contrast(), contrasts_fisher_exact(), df.residual.rfit_prolfqua(), get_anova_df(), get_complete_model_fit(), get_p_values_pbeta(), group_label(), impute_refit_singular(), is_singular_lm(), linfct_all_possible_contrasts(), linfct_factors_contrasts(), linfct_from_model(), linfct_matrix_contrasts(), list_facades(), lookup_facade(), merge_contrasts_results(), model_analyse(), model_summary(), moderated_p_deqms(), moderated_p_deqms_long(), moderated_p_limma(), moderated_p_limma_long(), pivot_model_contrasts_to_wide(), plot_lmer_peptide_predictions(), register_facade(), sigma.rfit_prolfqua(), sim_build_models_lm(), sim_build_models_lmer(), sim_build_models_logistf(), sim_make_model_lm(), sim_make_model_lmer(), strategy_limma(), strategy_limpa(), strategy_logistf(), summary_ROPECA_median_p.scaled(), unregister_facade(), vcov.rfit_prolfqua()

Examples

# Fit a normal lm, then wrap it with borrowed covariance
dat <- data.frame(group_ = rep(c("A", "B"), each = 4),
                  y = c(20.1, 20.5, 19.8, 20.3, 22.1, 22.4, 21.9, 22.2))
fit <- lm(y ~ group_, data = dat)

# Wrap with borrowed variance (in practice these come from donor pool)
wrapped <- prolfqua:::new_imputed_model(fit,
  borrowed_vcov = vcov(fit),
  borrowed_sigma = 0.8,
  borrowed_df = 6,
  n_observed = 5)

# S3 dispatch returns borrowed values
stopifnot(inherits(wrapped, "imputed_model"))
stopifnot(sigma(wrapped) == 0.8)
stopifnot(df.residual(wrapped) == 6)
# coefficients() still dispatches to underlying lm
stopifnot(identical(coefficients(wrapped), coefficients(fit)))