The mice package implements a method to deal with missing data. The package creates multiple imputations (replacement values) for multivariate missing data. The method is based on Fully Conditional Specification, where each incomplete variable is imputed by a separate model. The MICE algorithm can impute mixes of continuous, binary, unordered categorical and ordered categorical data. In addition, MICE can impute continuous two-level data, and maintain consistency between imputations by means of passive imputation. Many diagnostic plots are implemented to inspect the quality of the imputations.
The mice package can be installed from CRAN as follows:
install.packages("mice")The latest version is can be installed from GitHub as follows:
install.packages("devtools")
devtools::install_github(repo = "stefvanbuuren/mice")The mice package contains functions to
- Inspect the missing data pattern
- Impute the missing data m times, resulting in m completed data sets
- Diagnose the quality of the imputed values
- Analyze each completed data set
- Pool the results of the repeated analyses
- Store and export the imputed data in various formats
- Generate simulated incomplete data
- Incorporate custom imputation methods
New feature in version 2.41: User may choose which cells to impute.
The main functions in the mice package are:
| Function name | Description |
|---|---|
mice() |
Impute the missing data m times |
with() |
Analyze completed data sets |
pool() |
Combine parameter estimates |
complete() |
Export imputed data |
ampute() |
Generate missing data |
If you are new to mice consider studying the materials of our one-day course in Winnigpeg. The materials are at https://stefvanbuuren.github.io/Winnipeg.
A detailed series of vignettes that walk you through solving realistic inference problems with mice. These vignettes overlap with the one-day course.
We suggest going through these vignettes in the following order
- Ad hoc methods and the MICE algorithm
- Convergence and pooling
- Inspecting how the observed data and missingness are related
- Passive imputation and post-processing
- Imputing multilevel data
- Sensitivity analysis with
mice
Packages that extend the functionality of mice include:
ImputeRobust: Multiple Imputation withGAMLSScountimp: Incomplete count datamiceadds: Functions for multilevel imputationmicemd: Functions for multilevel imputationCALIBERrfimpute: Another random forest methodsmcfcs: Addressing incompatibility in selected modelsparlMICE: Parallel MICE imputation wrapperfancyimpyute: MICE in Python for ordinal data
The mice software was published in the Journal of Statistical Software (Buuren and Groothuis-Oudshoorn 2011). The first application of the method concerned missing blood pressure data (Buuren, Boshuizen, and Knook 1999). The term Fully Conditional Specification was introduced in 2006 to describe a general class of methods that specify imputations model for multivariate data as a set of conditional distributions (Buuren et al. 2006). Details about imputing mixes of numerical and categorical data can be found in (Buuren 2007). Wulff and Ejlskov provide a comprehensive overview of MICE. Many more details and applications can be found in the book Flexible Imputation of Missing Data (Buuren 2012) (see Chapman & Hall/CRC or Amazon).
Buuren, S. van. 2007. “Multiple Imputation of Discrete and Continuous Data by Fully Conditional Specification.” Statistical Methods in Medical Research 16 (3): 219–42.
———. 2012. Flexible Imputation of Missing Data. Boca Raton, FL: Chapman & Hall/CRC Press.
Buuren, S. van, and K. Groothuis-Oudshoorn. 2011. “MICE: Multivariate Imputation by Chained Equations in R.” Journal of Statistical Software 45 (3): 1–67.
Buuren, S. van, H. C. Boshuizen, and D. L. Knook. 1999. “Multiple Imputation of Missing Blood Pressure Covariates in Survival Analysis.” Statistics in Medicine 18 (6): 681–94.
Buuren, S. van, J. P. L. Brand, C. G. M. Groothuis-Oudshoorn, and D. B. Rubin. 2006. “Fully Conditional Specification in Multivariate Imputation.” Journal of Statistical Computation and Simulation 76 (12): 1049–64.