This runs t-test (based on lm(), therefore assuming equal variances) on multiple imputations, with the ability to take into account survey weights.
t_test_mi(mi_list, dv, groups, weights = NULL)
A one-row tibble containing the result of the t-test
#Create list with imputed data
library(mice)
library(dplyr)
imp <- mice(nhanes2)
#>
#> iter imp variable
#> 1 1 bmi hyp chl
#> 1 2 bmi hyp chl
#> 1 3 bmi hyp chl
#> 1 4 bmi hyp chl
#> 1 5 bmi hyp chl
#> 2 1 bmi hyp chl
#> 2 2 bmi hyp chl
#> 2 3 bmi hyp chl
#> 2 4 bmi hyp chl
#> 2 5 bmi hyp chl
#> 3 1 bmi hyp chl
#> 3 2 bmi hyp chl
#> 3 3 bmi hyp chl
#> 3 4 bmi hyp chl
#> 3 5 bmi hyp chl
#> 4 1 bmi hyp chl
#> 4 2 bmi hyp chl
#> 4 3 bmi hyp chl
#> 4 4 bmi hyp chl
#> 4 5 bmi hyp chl
#> 5 1 bmi hyp chl
#> 5 2 bmi hyp chl
#> 5 3 bmi hyp chl
#> 5 4 bmi hyp chl
#> 5 5 bmi hyp chl
imp_list <- complete(imp, action="long") %>%
dplyr::group_split(.imp)
t_test_mi(imp_list, bmi, hyp)
#> # A tibble: 1 × 7
#> x y mean_diff t_value df p_value group_var
#> <chr> <chr> <dbl> <dbl> <dbl> <dbl> <chr>
#> 1 no yes -0.248 -0.107 11.2 0.917 hyp