SlideShare ist ein Scribd-Unternehmen logo
1 von 15
Downloaden Sie, um offline zu lesen
Easy imputation with the simputation package
Mark van der Loo, Statistics Netherlands
@markvdloo | github.com/markvanderloo
# starring:
library(simputation)
# special guest:
library(lumberjack)
Example data
data(retailers, package='validate')
ret <- retailers[3:7]
head(ret, 3)
## staff turnover other.rev total.rev staff.costs
## 1 75 NA NA 1130 NA
## 2 9 1607 NA 1607 131
## 3 NA 6886 -33 6919 324
Imputation in R
Specialized packages
Many available (VIM, mice, Amelia, mi, . . .)
Interfaces vary (a lot)
DIY with model/predict
m <- lm(Y ~ X, data=mydata)
ina <- is.na(mydata$Y)
mydata[ina, "Y"] <- predict(m, newdata = mydata[ina,])
Code duplication, doesn’t always work
Idea of the simputation package
Provide
a uniform interface,
with consistent behaviour,
across commonly used methodologies
To facilitate
experimentation
configuration for production
The simputation interface
impute_<model>(data
, <imputed vars> ~ <predictor vars>
, [options])
Example: linear model imputation
impute_lm(ret, other.rev ~ turnover) %>% head(3)
## staff turnover other.rev total.rev staff.costs
## 1 75 NA NA 1130 NA
## 2 9 1607 5427.113 1607 131
## 3 NA 6886 -33.000 6919 324
Example: chaining imputations
ret %>%
impute_lm(other.rev ~ turnover + staff) %>%
impute_lm(other.rev ~ staff) %>%
head(3)
## staff turnover other.rev total.rev staff.costs
## 1 75 NA 13914.261 1130 NA
## 2 9 1607 6089.698 1607 131
## 3 NA 6886 -33.000 6919 324
Example: robust imputation (M-estimation)
ret %>%
impute_rlm(other.rev ~ turnover + staff) %>%
impute_rlm(other.rev ~ staff) %>%
head(3)
## staff turnover other.rev total.rev staff.costs
## 1 75 NA 178.04477 1130 NA
## 2 9 1607 19.44232 1607 131
## 3 NA 6886 -33.00000 6919 324
Example: Multiple variables, same predictors
ret %>%
impute_rlm(other.rev + total.rev ~ turnover)
ret %>%
impute_rlm( . - turnover ~ turnover)
Example: grouping
retailers %>% impute_rlm(total.rev ~ turnover | size)
# or, using dplyr::group_by
retailers %>%
group_by(size) %>%
impute_rlm(total.rev ~ turnover)
Example: add random residual
retailers %>% impute_rlm(total.rev ~ turnover | size,
add_residual="observed")
retailers %>% impute_rlm(total.rev ~ turnover | size,
add_residual="normal")
+ε
Example: train on A, apply to B
m <- MASS::rlm(other.rev ~ turnover + staff
, data=retailers)
impute(ret, other.rev ~ m)
Currently available methods
Model based (optional random residual):
− standard/M/elasticnet regression
− CART models and Random forest
Multivariate
− EM-based imputation
− missForest (=iterative random forest)
Donor imputation (including various donor pool specifications)
− k-nearest neigbour (based on gower’s distance)
− sequential, random hotdeck
− Predictive mean matching
Other
− (groupwise) median imputation (optional random residual)
− Proxy imputation: copy another variable or use a simple
transformation to compute imputed values.
Who imputed what? Ask the lumberjack!
Lumberjack
A pipe operator that logs changes in data.
Provides
%>>%: the lumberjack operator
start_log(): start loggin’
dump_log() : dump log to file
stop_log() : end loggin’
Several loggers
Fully extendable
Users can provide their own loggers
Example
ret$id <- seq_len(nrow(ret))
logger <- cellwise$new(key="id")
imputed <- ret %>>%
start_log(logger) %>>%
impute_rlm(other.rev ~ total.rev + staff) %>>%
impute_median(other.rev ~ 1) %>>%
dump_log(stop=TRUE)
## Dumped a log at cellwise.csv
read.csv("cellwise.csv") %>>% head(3)
## step time expression
## 1 1 2017-07-07 07:59:26 CEST impute_rlm(other.rev ~ total.rev + staff)
## 2 1 2017-07-07 07:59:26 CEST impute_rlm(other.rev ~ total.rev + staff)
## 3 1 2017-07-07 07:59:26 CEST impute_rlm(other.rev ~ total.rev + staff)
## key variable old new
## 1 11 other.rev NA 10.9302607
## 2 12 other.rev NA -0.2282258
## 3 18 other.rev NA 8.8491158
Some pointers
Getting started
install.packages('simputation', dependencies = TRUE)
install.packages('lumberjack')
vignette("intro",package="simputation")
vignette("intro",package="lumberjack")
Code / issues:
github.com/markvanderloo/
Contact
@markvdloo | mark.vanderloo@gmail.com

Weitere ähnliche Inhalte

Ähnlich wie Easy imputation with the simputation package

R programming intro with examples
R programming intro with examplesR programming intro with examples
R programming intro with examplesDennis
 
Efficient equity portfolios using mean variance optimisation in R
Efficient equity portfolios using mean variance optimisation in REfficient equity portfolios using mean variance optimisation in R
Efficient equity portfolios using mean variance optimisation in RGregg Barrett
 
Silicon valleycodecamp2013
Silicon valleycodecamp2013Silicon valleycodecamp2013
Silicon valleycodecamp2013Sanjeev Mishra
 
Map reduce: beyond word count
Map reduce: beyond word countMap reduce: beyond word count
Map reduce: beyond word countJeff Patti
 
Feature Engineering - Getting most out of data for predictive models - TDC 2017
Feature Engineering - Getting most out of data for predictive models - TDC 2017Feature Engineering - Getting most out of data for predictive models - TDC 2017
Feature Engineering - Getting most out of data for predictive models - TDC 2017Gabriel Moreira
 
INFORMATIVE ESSAYThe purpose of the Informative Essay assignme.docx
INFORMATIVE ESSAYThe purpose of the Informative Essay assignme.docxINFORMATIVE ESSAYThe purpose of the Informative Essay assignme.docx
INFORMATIVE ESSAYThe purpose of the Informative Essay assignme.docxcarliotwaycave
 
Programming python quick intro for schools
Programming python quick intro for schoolsProgramming python quick intro for schools
Programming python quick intro for schoolsDan Bowen
 
Random Forest / Bootstrap Aggregation
Random Forest / Bootstrap AggregationRandom Forest / Bootstrap Aggregation
Random Forest / Bootstrap AggregationRupak Roy
 
Data science with R - Clustering and Classification
Data science with R - Clustering and ClassificationData science with R - Clustering and Classification
Data science with R - Clustering and ClassificationBrigitte Mueller
 
An Introduction to Simulation in the Social Sciences
An Introduction to Simulation in the Social SciencesAn Introduction to Simulation in the Social Sciences
An Introduction to Simulation in the Social Sciencesfsmart01
 
Summerization notes for descriptive statistics using r
Summerization notes for descriptive statistics using r Summerization notes for descriptive statistics using r
Summerization notes for descriptive statistics using r Ashwini Mathur
 
RDataMining slides-regression-classification
RDataMining slides-regression-classificationRDataMining slides-regression-classification
RDataMining slides-regression-classificationYanchang Zhao
 

Ähnlich wie Easy imputation with the simputation package (20)

R console
R consoleR console
R console
 
R programming intro with examples
R programming intro with examplesR programming intro with examples
R programming intro with examples
 
R code for data manipulation
R code for data manipulationR code for data manipulation
R code for data manipulation
 
R code for data manipulation
R code for data manipulationR code for data manipulation
R code for data manipulation
 
NumPy/SciPy Statistics
NumPy/SciPy StatisticsNumPy/SciPy Statistics
NumPy/SciPy Statistics
 
Efficient equity portfolios using mean variance optimisation in R
Efficient equity portfolios using mean variance optimisation in REfficient equity portfolios using mean variance optimisation in R
Efficient equity portfolios using mean variance optimisation in R
 
Silicon valleycodecamp2013
Silicon valleycodecamp2013Silicon valleycodecamp2013
Silicon valleycodecamp2013
 
Map reduce: beyond word count
Map reduce: beyond word countMap reduce: beyond word count
Map reduce: beyond word count
 
Feature Engineering - Getting most out of data for predictive models - TDC 2017
Feature Engineering - Getting most out of data for predictive models - TDC 2017Feature Engineering - Getting most out of data for predictive models - TDC 2017
Feature Engineering - Getting most out of data for predictive models - TDC 2017
 
INFORMATIVE ESSAYThe purpose of the Informative Essay assignme.docx
INFORMATIVE ESSAYThe purpose of the Informative Essay assignme.docxINFORMATIVE ESSAYThe purpose of the Informative Essay assignme.docx
INFORMATIVE ESSAYThe purpose of the Informative Essay assignme.docx
 
Decision Tree.pptx
Decision Tree.pptxDecision Tree.pptx
Decision Tree.pptx
 
NCCU: Statistics in the Criminal Justice System, R basics and Simulation - Pr...
NCCU: Statistics in the Criminal Justice System, R basics and Simulation - Pr...NCCU: Statistics in the Criminal Justice System, R basics and Simulation - Pr...
NCCU: Statistics in the Criminal Justice System, R basics and Simulation - Pr...
 
Programming python quick intro for schools
Programming python quick intro for schoolsProgramming python quick intro for schools
Programming python quick intro for schools
 
Random Forest / Bootstrap Aggregation
Random Forest / Bootstrap AggregationRandom Forest / Bootstrap Aggregation
Random Forest / Bootstrap Aggregation
 
Data science with R - Clustering and Classification
Data science with R - Clustering and ClassificationData science with R - Clustering and Classification
Data science with R - Clustering and Classification
 
An Introduction to Simulation in the Social Sciences
An Introduction to Simulation in the Social SciencesAn Introduction to Simulation in the Social Sciences
An Introduction to Simulation in the Social Sciences
 
Summerization notes for descriptive statistics using r
Summerization notes for descriptive statistics using r Summerization notes for descriptive statistics using r
Summerization notes for descriptive statistics using r
 
RDataMining slides-regression-classification
RDataMining slides-regression-classificationRDataMining slides-regression-classification
RDataMining slides-regression-classification
 
Session 02
Session 02Session 02
Session 02
 
Oct.22nd.Presentation.Final
Oct.22nd.Presentation.FinalOct.22nd.Presentation.Final
Oct.22nd.Presentation.Final
 

Kürzlich hochgeladen

Observational constraints on mergers creating magnetism in massive stars
Observational constraints on mergers creating magnetism in massive starsObservational constraints on mergers creating magnetism in massive stars
Observational constraints on mergers creating magnetism in massive starsSérgio Sacani
 
Manassas R - Parkside Middle School 🌎🏫
Manassas R - Parkside Middle School 🌎🏫Manassas R - Parkside Middle School 🌎🏫
Manassas R - Parkside Middle School 🌎🏫qfactory1
 
Quarter 4_Grade 8_Digestive System Structure and Functions
Quarter 4_Grade 8_Digestive System Structure and FunctionsQuarter 4_Grade 8_Digestive System Structure and Functions
Quarter 4_Grade 8_Digestive System Structure and FunctionsCharlene Llagas
 
User Guide: Capricorn FLX™ Weather Station
User Guide: Capricorn FLX™ Weather StationUser Guide: Capricorn FLX™ Weather Station
User Guide: Capricorn FLX™ Weather StationColumbia Weather Systems
 
Davis plaque method.pptx recombinant DNA technology
Davis plaque method.pptx recombinant DNA technologyDavis plaque method.pptx recombinant DNA technology
Davis plaque method.pptx recombinant DNA technologycaarthichand2003
 
User Guide: Magellan MX™ Weather Station
User Guide: Magellan MX™ Weather StationUser Guide: Magellan MX™ Weather Station
User Guide: Magellan MX™ Weather StationColumbia Weather Systems
 
Citronella presentation SlideShare mani upadhyay
Citronella presentation SlideShare mani upadhyayCitronella presentation SlideShare mani upadhyay
Citronella presentation SlideShare mani upadhyayupadhyaymani499
 
Vision and reflection on Mining Software Repositories research in 2024
Vision and reflection on Mining Software Repositories research in 2024Vision and reflection on Mining Software Repositories research in 2024
Vision and reflection on Mining Software Repositories research in 2024AyushiRastogi48
 
ECG Graph Monitoring with AD8232 ECG Sensor & Arduino.pptx
ECG Graph Monitoring with AD8232 ECG Sensor & Arduino.pptxECG Graph Monitoring with AD8232 ECG Sensor & Arduino.pptx
ECG Graph Monitoring with AD8232 ECG Sensor & Arduino.pptxmaryFF1
 
Environmental Biotechnology Topic:- Microbial Biosensor
Environmental Biotechnology Topic:- Microbial BiosensorEnvironmental Biotechnology Topic:- Microbial Biosensor
Environmental Biotechnology Topic:- Microbial Biosensorsonawaneprad
 
GENERAL PHYSICS 2 REFRACTION OF LIGHT SENIOR HIGH SCHOOL GENPHYS2.pptx
GENERAL PHYSICS 2 REFRACTION OF LIGHT SENIOR HIGH SCHOOL GENPHYS2.pptxGENERAL PHYSICS 2 REFRACTION OF LIGHT SENIOR HIGH SCHOOL GENPHYS2.pptx
GENERAL PHYSICS 2 REFRACTION OF LIGHT SENIOR HIGH SCHOOL GENPHYS2.pptxRitchAndruAgustin
 
trihybrid cross , test cross chi squares
trihybrid cross , test cross chi squarestrihybrid cross , test cross chi squares
trihybrid cross , test cross chi squaresusmanzain586
 
Topic 9- General Principles of International Law.pptx
Topic 9- General Principles of International Law.pptxTopic 9- General Principles of International Law.pptx
Topic 9- General Principles of International Law.pptxJorenAcuavera1
 
Organic farming with special reference to vermiculture
Organic farming with special reference to vermicultureOrganic farming with special reference to vermiculture
Organic farming with special reference to vermicultureTakeleZike1
 
Pests of Bengal gram_Identification_Dr.UPR.pdf
Pests of Bengal gram_Identification_Dr.UPR.pdfPests of Bengal gram_Identification_Dr.UPR.pdf
Pests of Bengal gram_Identification_Dr.UPR.pdfPirithiRaju
 
STOPPED FLOW METHOD & APPLICATION MURUGAVENI B.pptx
STOPPED FLOW METHOD & APPLICATION MURUGAVENI B.pptxSTOPPED FLOW METHOD & APPLICATION MURUGAVENI B.pptx
STOPPED FLOW METHOD & APPLICATION MURUGAVENI B.pptxMurugaveni B
 
Call Girls in Majnu Ka Tilla Delhi 🔝9711014705🔝 Genuine
Call Girls in Majnu Ka Tilla Delhi 🔝9711014705🔝 GenuineCall Girls in Majnu Ka Tilla Delhi 🔝9711014705🔝 Genuine
Call Girls in Majnu Ka Tilla Delhi 🔝9711014705🔝 Genuinethapagita
 
Ai in communication electronicss[1].pptx
Ai in communication electronicss[1].pptxAi in communication electronicss[1].pptx
Ai in communication electronicss[1].pptxsubscribeus100
 
Pests of jatropha_Bionomics_identification_Dr.UPR.pdf
Pests of jatropha_Bionomics_identification_Dr.UPR.pdfPests of jatropha_Bionomics_identification_Dr.UPR.pdf
Pests of jatropha_Bionomics_identification_Dr.UPR.pdfPirithiRaju
 
Microphone- characteristics,carbon microphone, dynamic microphone.pptx
Microphone- characteristics,carbon microphone, dynamic microphone.pptxMicrophone- characteristics,carbon microphone, dynamic microphone.pptx
Microphone- characteristics,carbon microphone, dynamic microphone.pptxpriyankatabhane
 

Kürzlich hochgeladen (20)

Observational constraints on mergers creating magnetism in massive stars
Observational constraints on mergers creating magnetism in massive starsObservational constraints on mergers creating magnetism in massive stars
Observational constraints on mergers creating magnetism in massive stars
 
Manassas R - Parkside Middle School 🌎🏫
Manassas R - Parkside Middle School 🌎🏫Manassas R - Parkside Middle School 🌎🏫
Manassas R - Parkside Middle School 🌎🏫
 
Quarter 4_Grade 8_Digestive System Structure and Functions
Quarter 4_Grade 8_Digestive System Structure and FunctionsQuarter 4_Grade 8_Digestive System Structure and Functions
Quarter 4_Grade 8_Digestive System Structure and Functions
 
User Guide: Capricorn FLX™ Weather Station
User Guide: Capricorn FLX™ Weather StationUser Guide: Capricorn FLX™ Weather Station
User Guide: Capricorn FLX™ Weather Station
 
Davis plaque method.pptx recombinant DNA technology
Davis plaque method.pptx recombinant DNA technologyDavis plaque method.pptx recombinant DNA technology
Davis plaque method.pptx recombinant DNA technology
 
User Guide: Magellan MX™ Weather Station
User Guide: Magellan MX™ Weather StationUser Guide: Magellan MX™ Weather Station
User Guide: Magellan MX™ Weather Station
 
Citronella presentation SlideShare mani upadhyay
Citronella presentation SlideShare mani upadhyayCitronella presentation SlideShare mani upadhyay
Citronella presentation SlideShare mani upadhyay
 
Vision and reflection on Mining Software Repositories research in 2024
Vision and reflection on Mining Software Repositories research in 2024Vision and reflection on Mining Software Repositories research in 2024
Vision and reflection on Mining Software Repositories research in 2024
 
ECG Graph Monitoring with AD8232 ECG Sensor & Arduino.pptx
ECG Graph Monitoring with AD8232 ECG Sensor & Arduino.pptxECG Graph Monitoring with AD8232 ECG Sensor & Arduino.pptx
ECG Graph Monitoring with AD8232 ECG Sensor & Arduino.pptx
 
Environmental Biotechnology Topic:- Microbial Biosensor
Environmental Biotechnology Topic:- Microbial BiosensorEnvironmental Biotechnology Topic:- Microbial Biosensor
Environmental Biotechnology Topic:- Microbial Biosensor
 
GENERAL PHYSICS 2 REFRACTION OF LIGHT SENIOR HIGH SCHOOL GENPHYS2.pptx
GENERAL PHYSICS 2 REFRACTION OF LIGHT SENIOR HIGH SCHOOL GENPHYS2.pptxGENERAL PHYSICS 2 REFRACTION OF LIGHT SENIOR HIGH SCHOOL GENPHYS2.pptx
GENERAL PHYSICS 2 REFRACTION OF LIGHT SENIOR HIGH SCHOOL GENPHYS2.pptx
 
trihybrid cross , test cross chi squares
trihybrid cross , test cross chi squarestrihybrid cross , test cross chi squares
trihybrid cross , test cross chi squares
 
Topic 9- General Principles of International Law.pptx
Topic 9- General Principles of International Law.pptxTopic 9- General Principles of International Law.pptx
Topic 9- General Principles of International Law.pptx
 
Organic farming with special reference to vermiculture
Organic farming with special reference to vermicultureOrganic farming with special reference to vermiculture
Organic farming with special reference to vermiculture
 
Pests of Bengal gram_Identification_Dr.UPR.pdf
Pests of Bengal gram_Identification_Dr.UPR.pdfPests of Bengal gram_Identification_Dr.UPR.pdf
Pests of Bengal gram_Identification_Dr.UPR.pdf
 
STOPPED FLOW METHOD & APPLICATION MURUGAVENI B.pptx
STOPPED FLOW METHOD & APPLICATION MURUGAVENI B.pptxSTOPPED FLOW METHOD & APPLICATION MURUGAVENI B.pptx
STOPPED FLOW METHOD & APPLICATION MURUGAVENI B.pptx
 
Call Girls in Majnu Ka Tilla Delhi 🔝9711014705🔝 Genuine
Call Girls in Majnu Ka Tilla Delhi 🔝9711014705🔝 GenuineCall Girls in Majnu Ka Tilla Delhi 🔝9711014705🔝 Genuine
Call Girls in Majnu Ka Tilla Delhi 🔝9711014705🔝 Genuine
 
Ai in communication electronicss[1].pptx
Ai in communication electronicss[1].pptxAi in communication electronicss[1].pptx
Ai in communication electronicss[1].pptx
 
Pests of jatropha_Bionomics_identification_Dr.UPR.pdf
Pests of jatropha_Bionomics_identification_Dr.UPR.pdfPests of jatropha_Bionomics_identification_Dr.UPR.pdf
Pests of jatropha_Bionomics_identification_Dr.UPR.pdf
 
Microphone- characteristics,carbon microphone, dynamic microphone.pptx
Microphone- characteristics,carbon microphone, dynamic microphone.pptxMicrophone- characteristics,carbon microphone, dynamic microphone.pptx
Microphone- characteristics,carbon microphone, dynamic microphone.pptx
 

Easy imputation with the simputation package

  • 1. Easy imputation with the simputation package Mark van der Loo, Statistics Netherlands @markvdloo | github.com/markvanderloo # starring: library(simputation) # special guest: library(lumberjack)
  • 2. Example data data(retailers, package='validate') ret <- retailers[3:7] head(ret, 3) ## staff turnover other.rev total.rev staff.costs ## 1 75 NA NA 1130 NA ## 2 9 1607 NA 1607 131 ## 3 NA 6886 -33 6919 324
  • 3. Imputation in R Specialized packages Many available (VIM, mice, Amelia, mi, . . .) Interfaces vary (a lot) DIY with model/predict m <- lm(Y ~ X, data=mydata) ina <- is.na(mydata$Y) mydata[ina, "Y"] <- predict(m, newdata = mydata[ina,]) Code duplication, doesn’t always work
  • 4. Idea of the simputation package Provide a uniform interface, with consistent behaviour, across commonly used methodologies To facilitate experimentation configuration for production
  • 5. The simputation interface impute_<model>(data , <imputed vars> ~ <predictor vars> , [options]) Example: linear model imputation impute_lm(ret, other.rev ~ turnover) %>% head(3) ## staff turnover other.rev total.rev staff.costs ## 1 75 NA NA 1130 NA ## 2 9 1607 5427.113 1607 131 ## 3 NA 6886 -33.000 6919 324
  • 6. Example: chaining imputations ret %>% impute_lm(other.rev ~ turnover + staff) %>% impute_lm(other.rev ~ staff) %>% head(3) ## staff turnover other.rev total.rev staff.costs ## 1 75 NA 13914.261 1130 NA ## 2 9 1607 6089.698 1607 131 ## 3 NA 6886 -33.000 6919 324
  • 7. Example: robust imputation (M-estimation) ret %>% impute_rlm(other.rev ~ turnover + staff) %>% impute_rlm(other.rev ~ staff) %>% head(3) ## staff turnover other.rev total.rev staff.costs ## 1 75 NA 178.04477 1130 NA ## 2 9 1607 19.44232 1607 131 ## 3 NA 6886 -33.00000 6919 324
  • 8. Example: Multiple variables, same predictors ret %>% impute_rlm(other.rev + total.rev ~ turnover) ret %>% impute_rlm( . - turnover ~ turnover)
  • 9. Example: grouping retailers %>% impute_rlm(total.rev ~ turnover | size) # or, using dplyr::group_by retailers %>% group_by(size) %>% impute_rlm(total.rev ~ turnover)
  • 10. Example: add random residual retailers %>% impute_rlm(total.rev ~ turnover | size, add_residual="observed") retailers %>% impute_rlm(total.rev ~ turnover | size, add_residual="normal") +ε
  • 11. Example: train on A, apply to B m <- MASS::rlm(other.rev ~ turnover + staff , data=retailers) impute(ret, other.rev ~ m)
  • 12. Currently available methods Model based (optional random residual): − standard/M/elasticnet regression − CART models and Random forest Multivariate − EM-based imputation − missForest (=iterative random forest) Donor imputation (including various donor pool specifications) − k-nearest neigbour (based on gower’s distance) − sequential, random hotdeck − Predictive mean matching Other − (groupwise) median imputation (optional random residual) − Proxy imputation: copy another variable or use a simple transformation to compute imputed values.
  • 13. Who imputed what? Ask the lumberjack! Lumberjack A pipe operator that logs changes in data. Provides %>>%: the lumberjack operator start_log(): start loggin’ dump_log() : dump log to file stop_log() : end loggin’ Several loggers Fully extendable Users can provide their own loggers
  • 14. Example ret$id <- seq_len(nrow(ret)) logger <- cellwise$new(key="id") imputed <- ret %>>% start_log(logger) %>>% impute_rlm(other.rev ~ total.rev + staff) %>>% impute_median(other.rev ~ 1) %>>% dump_log(stop=TRUE) ## Dumped a log at cellwise.csv read.csv("cellwise.csv") %>>% head(3) ## step time expression ## 1 1 2017-07-07 07:59:26 CEST impute_rlm(other.rev ~ total.rev + staff) ## 2 1 2017-07-07 07:59:26 CEST impute_rlm(other.rev ~ total.rev + staff) ## 3 1 2017-07-07 07:59:26 CEST impute_rlm(other.rev ~ total.rev + staff) ## key variable old new ## 1 11 other.rev NA 10.9302607 ## 2 12 other.rev NA -0.2282258 ## 3 18 other.rev NA 8.8491158
  • 15. Some pointers Getting started install.packages('simputation', dependencies = TRUE) install.packages('lumberjack') vignette("intro",package="simputation") vignette("intro",package="lumberjack") Code / issues: github.com/markvanderloo/ Contact @markvdloo | mark.vanderloo@gmail.com