MICE Steps

The chained equation process can be broken down into six general steps:

Step 1: A simple imputation, such as imputing the mean, is performed for every missing value in the dataset. These mean imputations can be thought of as “place holders.”

Step 2: The “place holder” mean imputations for one variable (“var”) are set back to missing.

Step 3: The observed values from the variable “var” in Step 2 are regressed on the other variables in the imputation model, which may or may not consist of all of the variables in the dataset. In other words, “var” is the dependent variable in a regression model and all the other variables are independent variables in the regression model. These regression models operate under the same assumptions that one would make when performing (e.g.,) linear, logistic, or Poison regression models outside of the context of imputing missing data.

Step 4: The missing values for “var” are then replaced with predictions (imputations) from the regression model. When “var” is subsequently used as an independent variable in the regression models for other variables, both the observed and these imputed values will be used.

Step 5: Steps 2–4 are then repeated for each variable that has missing data. The cycling through each of the variables constitutes one iteration or “cycle.” At the end of one cycle all of the missing values have been replaced with predictions from regressions that reflect the relationships observed in the data.

Step 6: Steps 2 through 4 are repeated for a number of cycles, with the imputations being updated at each cycle. The number of cycles to be performed can be specified by the researcher. At the end of these cycles the final imputations are retained, resulting in one imputed dataset. Generally, ten cycles are performed (Raghunathan et al., 2002); however, research is needed to identify the optimal number of cycles when imputing data under different conditions. The idea is that by the end of the cycles the distribution of the parameters governing the imputations (e.g., the coefficients in the regression models) should have converged in the sense of becoming stable. This will, for example, avoid dependence on the order in which the variables are imputed. In practice, researchers can check the convergence by, for example, comparing the regression models at subsequent cycles, as discussed in He et al. (2009). Different MICE software packages vary somewhat in their exact implementation of this algorithm (e.g., in the order in which the variables are imputed), but the general strategy is the same.

I am interesting to know why mice use mean imputation (step 1) as first imputation , If I change mean imputation from step(1) to another imputations like (classification, neural-network , ... or another method for imputation) is that affect the accuracy of MICE imputation to higher accuracy.

  • $\begingroup$ Can you provide a reference supporting the idea that this is actually how the process is done? The originating paper does not tell the same story. Mean imputation or "simple imputation" as you call it is unbiased for estimating associations. The problem is that it is anticonservative (leads to standard error estimates that are too small). $\endgroup$
    – AdamO
    Jan 19, 2016 at 22:34
  • $\begingroup$ this reference illustrate how MICE work (Multiple Imputation by Chained Equations: What is it and how does it work?) [ncbi.nlm.nih.gov/pmc/articles/PMC3074241/] . $\endgroup$
    – zhyan
    Jan 19, 2016 at 22:40
  • $\begingroup$ @AdamO According to this reference mice use mean imputation as a first imputation and after that it use regression but I want to know if I change this first imputation to another imputation instead of mean imputation , can I get a higher accuracy ? $\endgroup$
    – zhyan
    Jan 20, 2016 at 17:18

2 Answers 2


The values in step 1 are only a starting point.

One of them actually is never used!

So most likely, the method is not very sensitive to these starting points. Even less if you plug in different advanced methods that may actually yielf very similar results.

It may be worth trying with random imputation in step 1. Instead of the mean, any random value from the same column is used.

Why don't you implement this variant of MICE, and let it run 1000 times. Then compare these 1000 results to the "mean" based standard MICE result. I'd expect a few runs to be better, a few more to be worse, but 95% of the runs will yield very similar quality to the mean-based MICE. Actually, there must even be some research paper that already tried this...

  • $\begingroup$ Thanks alot for your answer , but you told me to run it 1000 times you mean that to impute it 1000 time or it is number of iterations . also can you provide any paper that tried this $\endgroup$
    – zhyan
    Jan 21, 2016 at 18:31
  • $\begingroup$ 1000 Iterations, because it is a randomized algorithm, and you want to judge the actual distribution of the results, so you need a larger sample size. No, I don't know such a paper, you need to search yourself. $\endgroup$ Jan 21, 2016 at 19:03

The aregImpute function in the R Hmisc package implements a mice-like algorithm but relaxes linearity assumptions. It starts things off with the median (mode for categorical variables). I don't think the result is very sensitive to this but more research is needed about the affect of the order of presentation of variables and about what happens when many variables are missing on the same subject for many subjects.

There is some guidance in the literature about how many iterations should be done, with White et al suggesting $100f$ where $f$ is the fraction of incomplete observations. See these references:

  • $\begingroup$ On this site people upvote answers when they like them, as opposed to issuing separate messages - thanks Frank $\endgroup$ Jan 23, 2016 at 17:04
  • 1
    $\begingroup$ Frank Harrell ,but I`m new on this site also I up voted you but I have just 11 reputation when my reputation increase to 15 my upvote will receive you . $\endgroup$
    – zhyan
    Jan 23, 2016 at 18:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.