Visualization and Imputation of Missing Values
Overview
Provides methods for imputation and visualization of missing values. It includes graphical tools to explore the amount, structure and patterns of missing and/or imputed values, supporting exploratory data analysis and helping to investigate potential missingness mechanisms (details in Alfons, Templ and Filzmoser, doi:10.1007/s11634-011-0102-y). The quality of imputations can be assessed visually using a wide range of univariate, bivariate and multivariate plots. The package further provides several imputation methods, including efficient implementations of k-nearest neighbour and hot-deck imputation (Kowarik and Templ 2013, doi:10.18637/jss.v074.i07), iterative robust model-based multiple imputation (Templ 2011, doi:10.1016/j.csda.2011.04.012; Templ 2023, doi:10.3390/math11122729), and machine learning–based approaches such as robust GAM-based multiple imputation (Templ 2024, doi:10.1007/s11222-024-10429-1) as well as random forest and gradient boosting (XGBoost) imputation (Niederhametner et al., doi:10.1177/18747655251339401). General background and practical guidance on imputation are provided in the Springer book by Templ (2023) doi:10.1007/978-3-031-30073-8.
- **The mlr3 stack moved from
ImportstoSuggests.**mlr3,mlr3pipelines,mlr3learners,mlr3tuning,paradox,R6andfuturebackvimpute()and nothing else -- 6 of 58 R files -- yet as hard dependencies they tied VIM, and every package importing VIM, to the fate of the mlr3 chain: CRAN archives reverse dependencies recursively, so one archived link would have taken VIM down and sdcMicro, simPop, robCompositions, riskutility, deepImp and 15 further packages with it. None of those packages executes a line of mlr3-backed code; they usekNN(),hotdeck()andgowerD(), which are mlr3-free. VIM now installs, loads and runs its visualisation, donor and IRMI machinery without the stack present.vimpute()-- andregressionImp(),rangerImpute(),xgboostImpute()andoverimpute(), which delegate to it -- stop with an actionable message naming every missing package when the stack is absent. No behavioural change when it is installed.
Show all changes in 7.3.1Hide the rest of the changes in 7.3.1
vimpute()no longer callslgr::get_logger()unconditionally;lgris a suggested package and is now checked before use.- CRAN check-time reductions for the r-devel-windows 10-minute budget: the
vimputeandvimpute-mivignettes are precomputed like the simulation vignettes (code runs invignettes/precompute.R, the check renders text only), and thirteen further long-running regression-test files run only withNOT_CRAN=true(CI anddevtools::check()). No user-facing changes.
From NEWS.md in the release
Install
Health
- OK13 OK2026-08-05
- NOTE12 OK, 1 NOTE2026-08-01
- OK13 OK2026-06-09
- ERROR12 OK, 1 ERROR2026-06-08
- OK12 OK2026-04-25
Show 3 earlier changesHide 3 earlier changes
- NOTE11 OK, 3 NOTE2026-04-22
- ERROR10 OK, 3 NOTE, 1 ERROR2026-04-18
- NOTE11 OK, 3 NOTE2026-03-10
Documentation
- Help pages
- 102 (21 internal)includes a package overview page
- Examples that run
- 76%55 run in a plain check · 4 only when donttest examples are enabled (R CMD check --as-cran) · 13 never run
- Exported functions with examples
- 85%
- Documented parameters
- 93%
- Return-value docs
- 72%
- Help pages citing references
- 35%
- VIM
- Benchmarking imputation methods with makeMissing() and evaluation() HTML
- Donor based Imputation Methods
- Imputation Method based on Iterative EM PCA
- Imputation Method based on xgboost
- Imputation Method IRMI
- Imputation Method vimpute HTML
- Model based Imputation Methods
- Multiple imputation with vimpute: pooling, tuning and diagnostics HTML
- Restricted regression with vimpute HTML
Show 2 moreHide 2 vignettes
Downloads
Repository
- PRs merged (all time)
- 82%
- Median days to close, 50 most recently updated closed issues
- 27
- Median days to close, 50 most recently updated closed PRs
- 0
Stars over time
Forks over time
Releases over time
Issues over time
PRs over time
Commits over time
7 development-tooling and community-health practices detected across 4 families in the upstream repository
Checks run against github.com/statistikat/vim on 2026-10-11.
The R CMD check workflow runs on Linux, macOS and Windows, and on R-devel
GitHub Pages site last deployed 2026-09-22 · The repository has a site deploy workflow
This repository shows signs of AI coding tools.
- Claude Codefirst seen 2026-02-24Named in .Rbuildignore: .claude, CLAUDE.mdNamed in .gitignore: .claude, CLAUDE.mdCommits: at least 60 crediting it in the message
- Codexfirst seen 2026-04-28Named in .gitignore: .codex
- Claude Opus 542 commits · Sep 2026
- Claude Sonnet 514 commits · Sep 2026
- Claude Fable 5.12 commits · Sep 2026
- Claude Opus 4.62 commits · Feb 2026
Dependencies
Installing VIM adds 16 packages (13 with compiled code, 25 MB of source tarballs). Heaviest: data.table 5.7 MB, sp 4.3 MB, laeken 2.8 MB.
Show all 27 packagesHide all 27 packages
Code & Tests
Datasets
People & History
Pick two releases to compare their code metrics.
- 7.3.1Latest
- 7.3.02026-09-02 · diff ↗ ·
added 25 exports
as.mids.vimmi, cellWeightsMCD, imputeCellEM, imputeCellIRMI, imputeCellM, imputeCellMCD, imputeCellMM, imputeCellReg, imputeCellwise, makeMissing, overimpute, register_vimpute_method, unregister_vimpute_method, vim_as_mids, vim_complete, vimpute_methods, vimpute_search_space, vimpute_spec, vimpute_tune_control, vs_gam, vs_ranger, vs_regularized, vs_robgam, vs_robust, vs_xgboost - RR 4.6.0 released · 2026-04-24
- 7.0.0
- 6.2.6
- RR 4.5.0 released · 2025-04-11
- RR 4.4.0 released · 2024-04-24
- RR 4.3.0 released · 2023-04-21
- 6.2.2
- RR 4.2.0 released · 2022-04-22
- 6.1.1
- RR 4.1.0 released · 2021-05-18
- 6.1.0
- 6.0.02020-05-08 · diff ↗ ·
removed 9 exports
aggr_work, existsVm, getVm, lr, mape, putVm, rmVm, smape, vmGUIenviradded 1 export
rangerImpute - RR 4.0.0 released · 2020-04-24
- 5.1.1
Show 21 earlier eventsHide 21 earlier events
- 5.1.02020-02-05 · diff ↗ ·
removed 1 export
plot.aggradded 6 exports
aggr_work, evaluation, msecor, msecov, nrmse, pfc - RR 3.6.0 released · 2019-04-26
- 4.8.0
- RR 3.5.0 released · 2018-04-23
- RR 3.4.0 released · 2017-04-21
- 4.7.02017-04-11 · diff ↗
- 4.6.02016-10-17 · diff ↗
- 4.5.02016-06-29 · diff ↗
- RR 3.3.0 released · 2016-05-03
- 4.4.12015-09-15 · diff ↗
- 4.3.02015-07-07 · diff ↗
- RR 3.2.0 released · 2015-04-16
- 4.1.0
- RR 3.1.0 released · 2014-04-10
- 4.0.02013-10-10 · diff ↗ ·
removed 13 exports
bubbleMiss, iimagMiss, TKRaggr, TKRmarginmatrix, TKRmatrixplot, TKRparcoordMiss, TKRpbox, TKRscattmatrixMiss, vmGUImenu, gowerD, sampleCat, maxCat, which.minNadded 6 exports
existsVm, getVm, plot.aggr, putVm, regressionImp, rmVm - 3.0.3.12013-04-11 · diff ↗
- RR 3.0.0 released · 2013-04-03
- 3.0.3
- removedRemoved from CRAN2012-10-11copyright and licence violations and misrepresentation of authorship
- 3.0.22012-10-11
- RR 2.15.0 released · 2012-03-30
Package metadata
- First published
- 2012-10-11
- Total releases
- 21 / 14 yrs
- License
- GPL (>= 2) OSI
- Minimum R
- ≥ 4.1.0
- Bundled data
- 807 KB / 18 files
- Download size
- 4.5 MB
Cite
Cite this package
Run in R for the authors' entry:
citation("VIM")The package provides a citation file, so citation() returns the authors' own entry.
It points to 10.18637/jss.v074.i07.
Cite the R Observatory
For a number measured here: a download total, a coverage figure, an archival date.
From data release v2026-10-18, which the citation names so these numbers can be found later. More on citing and the projects behind them.