cannot be modelled accurately. The problem with single imputation techniques in general is they reduce the variance of the imputed dataset and cannot provide standard errors and confidence intervals for the missing data. They are also very case specific as they can meaningfully impute data only when the model is known or when the data is either numerical or discrete.

To solve the problems of single imputation, multiple imputation strategies generate several imputed datasets from which confidence intervals can be calculated. Multiple imputation is a process where several complete databases are created by imputing different values to reflect the uncertainty about the right values to impute [@rubin1977formalizing; @farhangfar2007novel]. The earliest multiple imputation technique was the Expectation-Maximization (EM) Algorithm [@LR77EM]. The EM Algorithm and its variants such as EM with bootstrapping [@honaker2011amelia], assumes a parametric density function which fails miserably for features without a parametric density. A recent generalization of the EM Algorithm called Pattern Alternating Maximization with Lasso Penalty (MissPALasso) [@stadler2014pattern] has been applied to datasets with high dimensionality ($p >> n$), but also assuming normality. Bayesian multiple imputation algorithms have been applied only to multivariate normal samples [@li1988imputation; @rubin1990efficiently].

Regression Imputation [@gelman2006data] is also a popular multiple imputation technique 