Simple Imputation (simputation)

Published by onesixx on

https://cran.r-project.org/web/packages/simputation/simputation.pdf

# https://cran.r-project.org/web/packages/simputation/simputation.pdf
dd <- as.data.table(iris)
irisNA <- copy(dd)
irisNA[1:3, 'Sepal.Length'] <- NA

my_model <- lm(Sepal.Length ~ Sepal.Width + Species, data=dd)

irisNA %>% impute(Sepal.Length ~ my_model)
# https://cran.r-project.org/web/packages/simputation/simputation.pdf
data(iris)
dd <- as.data.table(iris)

irisNA <- copy(as.data.table(iris))
irisNA[1:4, "Sepal.Length"] <- NA
irisNA[3:7, "Sepal.Width"]  <- NA
irisNA %>% head(10)


irisNA %>% impute_lm(Sepal.Length ~ Sepal.Width + Species)                  # impute a single variable (Sepal.Length)
irisNA %>% impute_rlm(Sepal.Length + Sepal.Width ~ Species + Petal.Length)  # impute both Sepal.Length and Sepal.Width, using robust linear regression
irisNA %>% impute_rlm(Sepal.Length + Sepal.Width ~ Species + Petal.Length + Petal.Width) 

irisNA %>% impute_median(Sepal.Length ~ Species)
irisNA %>% impute_median(.-Species    ~ Species)
irisNA %>% impute_median(Sepal.Length+Sepal.Width+Petal.Length+Petal.Width  ~ Species) # same above

irisNA %>% impute_knn(Sepal.Length ~ Species, 
\t\t\t\t\t\tpool = c("complete", "univariate", "multivariate"),
\t\t\t\t\t\tk = 5,
\t\t\t\t\t\tbackend = getOption("simputation.hdbackend", default = c("simputation", "VIM")))
irisNA %>% impute_knn(Sepal.Length + Sepal.Width  ~ Species, 
\t\t\t\t\t\tpool = c("complete", "univariate", "multivariate"),
\t\t\t\t\t\tk = 5,
\t\t\t\t\t\tbackend = getOption("simputation.hdbackend", default = c("simputation", "VIM")))
Categories: R Reshaping

onesixx

Blog Owner

Subscribe
Notify of
guest

0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x