Changes in version 0.9.1.9000 - Update the Little test description in the missing data and imputation vignette. Changes in version 0.9.1 (2026-02-26) Bug fixes - PMM returned predicted values instead of observed values (C++): The pmm model returned predicted $\hat{y}$ for missing rows instead of the nearest observed $y$ values. Now it follows Little and Rubin (2002). - PMM with character/factor variables (R): fill_NA_N() with model = "pmm" and a character dependent variable failed because it attempted as.numeric() on non-numeric strings, producing all NAs. - Character dependent variable with lm models: fill_NA() and fill_NA_N() with model = "lm_pred", "lm_bayes", or "lm_noise" silently returned all NAs when the dependent variable was character with non-numeric labels (e.g., "apple", "banana"). Documentation - README: added sequential-chain MI examples (dplyr and data.table) showing how to impute multiple variables and pool with Rubin's rules. - Introduction vignette: added full imputation workflow with sequential ordering (impute variables whose predictors are complete first), FCS (chained equations) section with data.table example, and PMM note for the OOP interface. - MI vignette: expanded Rubin's rules derivations, added PMM MI example using the OOP interface, expanded "Important caveat" section with OOP and data.table FCS code snippets for non-monotone patterns. - Documented PMM as a proper MI method throughout vignettes and README. - Improved prose throughout vignettes and README. Tests - Added 20 PMM-specific tests (test-pmm.R): observed-value returns, factor/character support, weighted PMM, grouped data.table, reproducibility, stochasticity. - Added 31 FCS tests (test-fcs.R): data.table, data.frame, and OOP FCS helpers; joint-missingness handling; MI+pool workflow; comparison with mice (pooled estimates and imputed means). - Added tests for character dependent variables with non-numeric labels across all models and data types. - Test suite expanded from 243 to 311 tests. Changes in version 0.9.0 Kota Hattori, thank you for your feedback and for motivating me for this deep update. New features - pool() function for combining results from multiply imputed datasets (Rubin's rules, Barnard-Rubin df adjustment). Works with lm, glm, and other models that support coef() and vcov(). Validated against mice. - print and summary methods for pooled results. Bug fixes - fixed residual variance estimator in lm_noise and lm_bayes stochastic models: divisor changed from n-p-1 to n-p, where p already counts the intercept column supplied by the user. The previous formula over-corrected by one degree of freedom. Documentation and internals - new vignette on missing data mechanisms (MCAR/MAR/MNAR) and MI workflows. - refactored introduction vignette with pool() examples. - improved README with MI section and benchmark table. - test suite for pool(), including comparison against mice::pool(). - new weighted regression validation test against lm.wfit(). - refactored C++ source code for clarity. - fixed typos in error messages and documentation. - regenerated performance benchmarks on R 4.4.3, macOS M3 Pro. Changes in version 0.8.5 (2025-02-03) - cran related update, OMP_THREAD_LIMIT. Changes in version 0.8.4 - fixed CRAN Notes. - style the cpp code. - VIF() should be more stable. Changes in version 0.8.2 (2022-11-17) - simplified naive_fill_NA, It is a regular sampling imputation now. - Fixed dontrun examples. - replace ggplot2::aes_string with ggplot2::aes, as the former is depreciated. - regenerate performance benchmarks on R 4.2.1. - styler over the code. - improve documentation. Changes in version 0.8.1 (2022-03-13) - tinyverse world, less dependencies. - fixed imputations for character variables under linear models. - speed up the pmm model. - more tests, higher covr. - rerun performance tests. Changes in version 0.7.1 (2021-07-10) - update URL inside README. Changes in version 0.7.0 - improve coverage. - use drop = FALSE when subsetting the data.frame - healthy DESCRIPTION file, fix spaces. - more input validation. Changes in version 0.6.8 - update broken vignette links Changes in version 0.6.6 - solve broken UpSetR::upset reference links Changes in version 0.6.5 - upset_NA based on UpSetR::upset plot function - compare_imp plot function - new logo - remove times argument Changes in version 0.6.2 (2020-07-10) - R CRAN r-oldrel-windows-ix86+x86_64 problems Changes in version 0.6.1 (2020-07-06) - lifecycle problems Changes in version 0.6.0 - fill_NA_N has a new model which is pmm - predictive mean matching - fast PMM - presorting and binary search - naive_fill_NA - auto function for data.frames - bayes mean and lda - ridge argument for lm models - adding small disturbance to diag of X'X - lm_bayes provide more disturbance - new tests - codecov Changes in version 0.5.1 (2019-08-19) - remove old urls form vignettes Changes in version 0.5.0 - providing a more comfortable environment for data.table/dplyr users - expand vignette and documentation - updated performance benchmarks - fix a glitch - e.g. lack of correct warning for a lda model with zero variance variables Changes in version 0.2.1-3 - data.table problem - jump to R 3.5.0 - valgrind - a lot of optimizations - problem with arma::exp and arma::randn - optimize a lot of code - methods/functions resistant to glitches Changes in version 0.2.0 - fix imputations with a grouping variable - error if there is precisly one NA at any group - add data.table to benchmarks - model with a grouping variable - add R functions (fill_NA_N,fill_NA,VIF) which could be used by a data.table user Changes in version 0.1.0 (2018-04-16) - add impute_N method - optimized multiple imputations - add vif method - Variance inflation factors Changes in version 0.0.3 - vignette,readme,description,todo Changes in version 0.0.2 (2018-03-25) - adjust to solaris - reference - set a grouping variable by a reference but as a numeric vector - integer vector do not work (randomly lost pointer)