mice Imputation Method in the synthpop Package — syn.mice" />
syn.mice.Rd
The function allows to use a mice imputation method to be used
in the synthpop::syn
function of
the synthpop package (Nowok, Raab, & Dibben, 2016).
syn.mice(y, x, xp, mice_fun, mice_args, ...)
y | Original data vector of length \(n\) |
---|---|
x | Matrix (\(n \times p\)) of original covariates |
xp | Matrix (\(k \times p\)) of synthesised covariates |
mice_fun | Name of imputation method for mice |
mice_args | Optional list of arguments for |
... | Further arguments to be passed |
When using the synthesis method "mice"
in
synthpop::syn
, the function arguments have to appear
as rf.mice_fun
and rf.mice_arg
(convention in synthpop).
A vector of length k
with synthetic values of y
.
Nowok, B., Raab, G., & Dibben, C. (2016). synthpop: Bespoke creation of synthetic data in R. Journal of Statistical Software, 74(11), 1-26. doi: 10.18637/jss.v074.i11
if (FALSE) { ############################################################################# # EXAMPLE 1: SD2011 | Minimal example for using a mice imputation method ############################################################################# library(synthpop) #** selection of dataset data(SD2011, package="synthpop") vars <- c("sex","age","ls","smoke") dat <- SD2011[1:1000, vars] dat$ls <- as.numeric(dat$ls) dat$smoke <- 1*(paste(dat$smoke)=="YES") #** default synthesis imp0 <- synthpop::syn(dat) pred <- imp0$predictor.matrix method <- imp0$method #** use mice imputation method 'rlm' for variable 'ls' method[c("ls","smoke")] <- c("mice","mice") mice_fun <- list( ls="rlm", smoke="pmm") mice_args <- list( ls=list( trafo=log, antitrafo=exp) ) #* synthesize data imp <- synthpop::syn( dat, method=method, predictor.matrix=pred, k=2000, m=1, rf.mice_fun=mice_fun, rf.mice_args=mice_args) summary(imp) }