# Iterations in Multiple Imputation

Despite reading this other StatsExchange post, I am still struggling to understand what iterations do in multiple imputation, i.e. the parameter "maxit" in the mice() function.

My understanding of iterations was that in the case of multiple predictor variables, since predictor variables would be used to impute other predictor variables, we would need multiple iterations to account for the different possible ways this could occur. Hence, we would get different predictor variable imputations for different iterations.

But this doesn't seem to be the correct interpretation, as even in a simulation with one predictor/response variable (code below), each iteration gives me different values... Below, I am applying multiple imputation to predict bmi (has missingness) using ONLY age (NO missingness). I expected the mean across imputations to be constant (i.e. each plotted line is horizontal) for each iteration, as there is only one predictor variable and hence only one source of uncertainty. What am I missing here? Thanks.

require(mice)
require(lattice)

imp <- mice(nhanes, m = 3, print=F, seed = 123)
pred <- imp\$pred

pred[ ,"hyp"] <- 0
pred[,"chl"] <- 0
pred
imp <- mice(nhanes, pred=pred, print=F)
plot(imp) • Please clarify your specific problem or provide additional details to highlight exactly what you need. As it's currently written, it's hard to tell exactly what you're asking.
– Community Bot
May 30, 2022 at 15:06

Iterations refers to the number of iterations the algorithm, which is used to fit the imputation model/draw the imputed pseudo-random numbers to replace the missing values, is allowed to use at most (maxit = maximum number of iterations). Assuming you set a high enough value for maxit, you should get a valid imputation under your assumed imputation model. If you then hold the random number seed fixed before each call to the imputation procedure, you should get the same imputations back when calling it repeatedly.