pool_spvims: Pool SPVIM Estimates Using Rubin's Rules

View source: R/pool_spvims.R

pool_spvimsR Documentation

Pool SPVIM Estimates Using Rubin's Rules

Description

If multiple imputation was used due to the presence of missing data, pool SPVIM estimates from individual imputed datasets using Rubin's rules. Results in point estimates averaged over the imputations, along with within-imputation variance estimates and across-imputation variance estimates; and test statistics and p-values for hypothesis testing.

Usage

pool_spvims(spvim_ests = NULL)

Arguments

spvim_ests

a list of estimated SPVIMs (of class vim)

Value

a list of results containing the following:

  • est, the average SPVIM estimate over the multiply-imputed datasets

  • se, the average of the within-imputation SPVIM variance estimates

  • test_statistics, the test statistics for hypothesis tests of zero importance, using the Rubin's rules standard error estimator and average SPVIM estimate

  • p_values, p-values computed using the above test statistics

  • tau_n, the across-imputation variance estimates

  • vcov, the overall variance-covariance matrix

Examples


data("biomarkers")
library("dplyr")
# do multiple imputation (with a small number for illustration only)
library("mice")
n_imp <- 2
set.seed(20231129)
mi_biomarkers <- mice::mice(data = biomarkers, m = n_imp, printFlag = FALSE)
imputed_biomarkers <- mice::complete(mi_biomarkers, action = "long") %>%
  rename(imp = .imp, id = .id)
# estimate SPVIMs for each imputed dataset, using simple library for illustration only
library("SuperLearner")
est_lst <- lapply(as.list(1:n_imp), function(l) {
  this_x <- imputed_biomarkers %>%
    filter(imp == l) %>%
    select(starts_with("lab"), starts_with("cea"))
  this_y <- biomarkers$mucinous
  suppressWarnings(
    vimp::sp_vim(Y = this_y, X = this_x, V = 2, type = "auc", 
                 SL.library = "SL.glm", gamma = 0.1, alpha = 0.05, delta = 0,
                 cvControl = list(V = 2), env = environment())
  )
})
# pool the SPVIMs using Rubin's rules
pooled_spvims <- pool_spvims(spvim_ests = est_lst)
pooled_spvims


flevr documentation built on June 22, 2024, 7:33 p.m.