# \donttest{
data(HolzingerSwineford1939, package = "lavaan")
## impose missing data for example
HSMiss <- HolzingerSwineford1939[ , c(paste("x", 1:9, sep = ""),
"ageyr","agemo","school")]
set.seed(123)
HSMiss$x5 <- ifelse(HSMiss$x5 <= quantile(HSMiss$x5, .3), NA, HSMiss$x5)
age <- HSMiss$ageyr + HSMiss$agemo/12
HSMiss$x9 <- ifelse(age <= quantile(age, .3), NA, HSMiss$x9)
## median split
HSbinary <- as.data.frame( lapply(HSMiss[ , paste0("x", 1:9)],
FUN = cut, breaks = 2, labels = FALSE) )
HSbinary$school <- HSMiss$school
## impute binary missing data using mice package
library(mice)
set.seed(456)
miceImps <- mice(HSbinary)
## save imputations in a list of data.frames
binHS5imps <- list()
for (i in 1:miceImps$m) binHS5imps[[i]] <- complete(miceImps, action = i)
# }
Run the code above in your browser using DataLab