Function reference

md.pattern()
 Missing data pattern

md.pairs()
 Missing data pattern by variable pairs

cc()
 Select complete cases

cci()
 Complete case indicator

ic()
 Select incomplete cases

ici()
 Incomplete case indicator

mcar()
 Jamshidian and Jalal's NonParametric MCAR Test

ncc()
 Number of complete cases

nic()
 Number of incomplete cases

nimp()
 Number of imputations per block

fico()
 Fraction of incomplete cases among cases with observed

flux()
 Influx and outflux of multivariate missing data patterns

fluxplot()
 Fluxplot of the missing data pattern
Main imputation functions
The workflow of multiple imputation is: multiplyimpute the data, apply the completedata model to each imputed data set, and pool the results to get to the final inference. The main functions for imputing the data are:

mice()
 mice: Multivariate Imputation by Chained Equations

mice.mids()
 Multivariate Imputation by Chained Equations (Iteration Step)

parlmice()
 Wrapper function that runs MICE in parallel
Elementary imputation functions
The elementary imputation function is the workhorse that creates the actual imputations. Elementary functions are called through the method
argument of mice
function. Each function imputes one or more columns in the data. There are also mice.impute.xxx
functions outside the mice
package.

mice.impute.2l.bin()
 Imputation by a twolevel logistic model using
glmer

mice.impute.2l.lmer()
 Imputation by a twolevel normal model using
lmer

mice.impute.2l.norm()
 Imputation by a twolevel normal model

mice.impute.2l.pan()
 Imputation by a twolevel normal model using
pan

mice.impute.2lonly.mean()
 Imputation of most likely value within the class

mice.impute.2lonly.norm()
 Imputation at level 2 by Bayesian linear regression

mice.impute.2lonly.pmm()
 Imputation at level 2 by predictive mean matching

mice.impute.cart()
 Imputation by classification and regression trees

mice.impute.jomoImpute()
 Multivariate multilevel imputation using
jomo

mice.impute.lasso.logreg()
 Imputation by direct use of lasso logistic regression

mice.impute.lasso.norm()
 Imputation by direct use of lasso linear regression

mice.impute.lasso.select.logreg()
 Imputation by indirect use of lasso logistic regression

mice.impute.lasso.select.norm()
 Imputation by indirect use of lasso linear regression

mice.impute.lda()
 Imputation by linear discriminant analysis

mice.impute.logreg()
 Imputation by logistic regression

mice.impute.logreg.boot()
 Imputation by logistic regression using the bootstrap

mice.impute.mean()
 Imputation by the mean

mice.impute.midastouch()
 Imputation by predictive mean matching with distance aided donor selection

mice.impute.mnar.logreg()
mice.impute.mnar.norm()
 Imputation under MNAR mechanism by NARFCS

mice.impute.mpmm()
 Imputation by multivariate predictive mean matching

mice.impute.norm()
 Imputation by Bayesian linear regression

mice.impute.norm.boot()
 Imputation by linear regression, bootstrap method

mice.impute.norm.nob()
 Imputation by linear regression without parameter uncertainty

mice.impute.norm.predict()
 Imputation by linear regression through prediction

mice.impute.panImpute()
 Impute multilevel missing data using
pan

mice.impute.passive()
 Passive imputation

mice.impute.pmm()
 Imputation by predictive mean matching

mice.impute.polr()
 Imputation of ordered data by polytomous regression

mice.impute.polyreg()
 Imputation of unordered data by polytomous regression

mice.impute.quadratic()
 Imputation of quadratic terms

mice.impute.rf()
 Imputation by random forests

mice.impute.ri()
 Imputation by the random indicator method for nonignorable data

mice.impute.sample()
 Imputation by simple random sampling
Imputation model helpers
Specification of the imputation models can be made more convenient using the following set of helpers.

quickpred()
 Quick selection of predictors from the data

squeeze()
 Squeeze the imputed values to be within specified boundaries.

make.blocks()
 Creates a
blocks
argument

make.blots()
 Creates a
blots
argument

make.formulas()
 Creates a
formulas
argument

make.method()
 Creates a
method
argument

make.post()
 Creates a
post
argument

make.predictorMatrix()
 Creates a
predictorMatrix
argument

make.visitSequence()
 Creates a
visitSequence
argument

make.where()
 Creates a
where
argument

construct.blocks()
 Construct blocks from
formulas
andpredictorMatrix

name.blocks()
 Name imputation blocks

name.formulas()
 Name formula list elements
Plots comparing observed to imputed/amputed data
These plots contrast the observed data with the imputed/amputed data, usually with a blue/red distinction.

bwplot(<mids>)
 Boxandwhisker plot of observed and imputed data

densityplot(<mids>)
 Density plot of observed and imputed data

plot(<mids>)
 Plot the trace lines of the MICE algorithm

stripplot(<mids>)
 Stripplot of observed and imputed data

xyplot(<mids>)
 Scatterplot of observed and imputed data
Repeated analyses and combining analytic estimates
Multiple imputation creates m > 1 completed data sets, fits the model of interest to each of these, and combines the analytic estimates. The following functions assist in executing the analysis and pooling steps:

with(<mids>)
 Evaluate an expression in multiple imputed datasets

pool()
pool.syn()
 Combine estimates by pooling rules

pool.r.squared()
 Pools R^2 of m models fitted to multiplyimputed data

pool.scalar()
pool.scalar.syn()
 Multiple imputation pooling: univariate version

nelsonaalen()
 Cumulative hazard rate or NelsonAalen estimator

pool.compare()
 Compare two nested models fitted to imputed data

anova(<mira>)
 Compare several nested models

fix.coef()
 Fix coefficients and update model

D1()
 Compare two nested models using D1statistic

D2()
 Compare two nested models using D2statistic

D3()
 Compare two nested models using D3statistic
Data manipulation
The multiplyimputed data can be combined in various ways, and exported into other formats.

complete(<mids>)
 Extracts the completed data from a
mids
object

as.mids()
 Converts an imputed dataset (long format) into a
mids
object

as.mira()
 Create a
mira
object from repeated analyses

as.mitml.result()
 Converts into a
mitml.result
object

cbind.mids()
 Combine
mids
objects by columns

rbind.mids()
 Combine
mids
objects by rows

ibind()
 Enlarge number of imputations by combining
mids
objects

filter(<mids>)
 Subset rows of a
mids
object

mids2mplus()
 Export
mids
object to Mplus

mids2spss()
 Export
mids
object to SPSS
Class descriptions
The data created at the various analytic phases are stored as list objects of a specific class. The most important classes and classtest functions are:

midsclass
mids
 Multiply imputed data set (
mids
)

miraclass
mira
 Multiply imputed repeated analyses (
mira
)

is.mids()
 Check for
mids
object

is.mipo()
 Check for
mipo
object

is.mira()
 Check for
mira
object

is.mitml.result()
 Check for
mitml.result
object

convergence()
 Computes convergence diagnostics for a
mids
object

getfit()
 Extract list of fitted models

getqbar()
 Extract estimate from
mipo
object

glance(<mipo>)
 Glance method to extract information from a `mipo` object

print(<mids>)
print(<mira>)
print(<mice.anova>)
print(<mice.anova.summary>)
 Print a
mids
object

summary(<mira>)
summary(<mids>)
summary(<mads>)
summary(<mice.anova>)
 Summary of a
mira
object

tidy(<mipo>)
 Tidy method to extract results from a `mipo` object
Lowlevel imputation functions
Several functions are dedicated to common lowlevel operations to generate the imputations:

estimice()
 Computes least squares parameters

norm.draw()
.norm.draw()
 Draws values of beta and sigma by Bayesian linear regression

.pmm.match()
 Finds an imputed value from matches in the predictive metric (deprecated)
Multivariate amputation
Amputation is the inverse of imputation, starting with a complete dataset, and creating missing data pattern according to the posited missing data mechanism. Amputation is useful for simulation studies.

ampute()
 Generate missing data for simulation purposes

bwplot(<mads>)
 Boxandwhisker plot of amputed and nonamputed data

xyplot(<mads>)
 Scatterplot of amputed and nonamputed data against weighted sum scores

is.mads()
 Check for
mads
object

madsclass
 Multivariate amputed data set (
mads
)

print(<mads>)
 Print a
mads
object

summary(<mira>)
summary(<mids>)
summary(<mads>)
summary(<mice.anova>)
 Summary of a
mira
object

boys
 Growth of Dutch boys

brandsma
 Brandsma school data used Snijders and Bosker (2012)

employee
 Employee selection data

fdgs
 Fifth Dutch growth study 2009

leiden85
 Leiden 85+ study

mammalsleep
sleep
 Mammal sleep data

mnar_demo_data
 MNAR demo data

nhanes
 NHANES example  all variables numerical

nhanes2
 NHANES example  mixed numerical and discrete variables

popmis
 Hox pupil popularity data with missing popularity scores

potthoffroy
 PotthoffRoy data

selfreport
mgg
 Selfreported and measured BMI

tbc
tbc.target
terneuzen
 Terneuzen birth cohort

toenail
 Toenail data

toenail2
 Toenail data

walking
 Walking disability data

windspeed
 Subset of Irish wind speed data

appendbreak()
 Appends specified break to the data

extractBS()
 Extract broken stick estimates from a
lmer
object

glm.mids()
 Generalized linear model for
mids
object

lm.mids()
 Linear regression for
mids
object

matchindex()
 Find index of matched donor units

mdc()
 Graphical parameter for missing data plots

mice.theme()
 Set the theme for the plotting Trellis functions

supports.transparent()
 Supports semitransparent foreground colors?

version()
 Echoes the package version number