# --- cbind ---
# impute four variables at once (default)
imp <- mice(nhanes, m = 1, maxit = 1, print = FALSE)
imp$predictorMatrix
# impute two by two
data1 <- nhanes[, c("age", "bmi")]
data2 <- nhanes[, c("hyp", "chl")]
imp1 <- mice(data1, m = 2, maxit = 1, print = FALSE)
imp2 <- mice(data2, m = 2, maxit = 1, print = FALSE)
# Append two solutions
imp12 <- cbind(imp1, imp2)
# This is a different imputation model
imp12$predictorMatrix
# Append the other way around
imp21 <- cbind(imp2, imp1)
imp21$predictorMatrix
# Append 'forgotten' variable chl
data3 <- nhanes[, 1:3]
imp3 <- mice(data3, maxit = 1, m = 2, print = FALSE)
imp4 <- cbind(imp3, chl = nhanes$chl)
# Of course, chl was not imputed
head(complete(imp4))
# Combine mids object with data frame
imp5 <- cbind(imp3, nhanes2)
head(complete(imp5))
# --- rbind ---
imp1 <- mice(nhanes[1:13, ], m = 2, maxit = 1, print = FALSE)
imp5 <- mice(nhanes[1:13, ], m = 2, maxit = 2, print = FALSE)
mylist <- list(age = NA, bmi = NA, hyp = NA, chl = NA)
nrow(complete(rbind(imp1, imp5)))
nrow(complete(rbind(imp1, mylist)))
nrow(complete(rbind(imp1, data.frame(mylist))))
nrow(complete(rbind(imp1, complete(imp5))))
Run the code above in your browser using DataLab