A resource website on missing values - Methods and references for managing missing data


We list some of the most popular R packages and Python libraries that allow to handle missing values.

Click here to go directly to the list of Python libraries.

R Packages

Here are some introductions to popular missing data packages with small examples on how to use them. It gives more extensive information than the CRAN Task View on Missing Data, which is recommended to get a first overall overview about the CRAN missing data landscape.

You can also contribute on your own to this page and provide a short introduction to a missing data package. Take a look at this short description on how to do this. We are very happy about all contributions.

  • imputeTS

    Category: Time-Series Imputation, Visualisations for Missing Data
    Imputation (replacement) of missing values in univariate time series. Offers several imputation functions and missing data plots. Available imputation algorithms include: ‘Mean’, ‘LOCF’, ‘Interpolation’, ‘Moving Average’, ‘Seasonal Decomposition’, ‘Kalman Smoothing on Structural Time Series models’, ‘Kalman Smoothing on ARIMA models’. Published in Moritz and Bartz-Beielstein (2017) <doi: 10.32614/RJ-2017-009>.
    CRAN DownloadsCRAN Release

  • mice

    Category: Multiple Imputation
    Multiple imputation using Fully Conditional Specification (FCS) implemented by the MICE algorithm as described in Van Buuren and Groothuis-Oudshoorn (2011) doi:10.18637/jss.v045.i03. Each variable has its own imputation model. Built-in imputation models are provided for continuous data (predictive mean matching, normal), binary data (logistic regression), unordered categorical data (polytomous logistic regression) and ordered categorical data (proportional odds). MICE can also impute continuous two-level data (normal model, pan, second-level variables). Passive imputation can be used to maintain consistency between variables. Various diagnostic plots are available to inspect the quality of the imputations.
    CRAN DownloadsCRAN Release

  • missForest

    Category: Single Imputation
    The function ‘missForest’ in this package is used to impute missing values particularly in the case of mixed-type data. It uses a random forest trained on the observed values of a data matrix to predict the missing values. It can be used to impute continuous and/or categorical data including complex interactions and non-linear relations. It yields an out-of-bag (OOB) imputation error estimate without the need of a test set or elaborate cross-validation. It can be run in parallel to save computation time.
    CRAN DownloadsCRAN Release

  • missMDA

    Category: Single and multiple Imputation, Multivariate Data Analysis
    Imputation of incomplete continuous or categorical datasets; Missing values are imputed with a principal component analysis (PCA), a multiple correspondence analysis (MCA) model or a multiple factor analysis (MFA) model; Perform multiple imputation with and in PCA or MCA.
    CRAN DownloadsCRAN Release

  • naniar

    Category: Visualisations for Missing Data
    Missing values are ubiquitous in data and need to be explored and handled in the initial stages of analysis. ‘naniar’ provides data structures and functions that facilitate the plotting of missing values and examination of imputations. This allows missing data dependencies to be explored with minimal deviation from the common work patterns of ‘ggplot2’ and tidy data. The work is fully discussed at Tierney & Cook (2018) <arXiv:1809.02264>.
    CRAN DownloadsCRAN Release

  • simputation

    Category: Single Imputation, Meta-Package
    Easy to use interfaces to a number of imputation methods that fit in the not-a-pipe operator of the ‘magrittr’ package.
    CRAN DownloadsCRAN Release

  • VIM

    Category: Single Imputation, Visualisations for Missing Data
    New tools for the visualization of missing and/or imputed values are introduced, which can be used for exploring the data and the structure of the missing and/or imputed values. Depending on this structure of the missing values, the corresponding methods may help to identify the mechanism generating the missing values and allows to explore the data including missing values. In addition, the quality of imputation can be visually explored using various univariate, bivariate, multiple and multivariate plot methods. A graphical user interface available in the separate package VIMGUI allows an easy handling of the implemented plot methods.
    CRAN DownloadsCRAN Release

Your favorite package is missing? Here is an explanation on how to make an entry for your package. Template

Python modules

Here are some links to modules or methods in Python to handle missing values.

  • sklearn.impute: module from sklearn for missing value imputation (simple imputation, conditional iterative imputer, k-Nearest Neighbors imputer).

  • pandas: available methods in pandas to handle dataframes with missing values (fill the missing values by a constant, remove missing values).

  • statsmodels.imputation: module from statsmodels to handle missing values (multiple imputation, Bayesian imputation using a Gaussian model).