Amelia is not able to do EM imputation without bootstrapping out of the box at the moment (this information is based on a personal conversation with the package maintainer). However, I came up with a short and somehow dirty hack that helps you to do EM imputation in R (similar to the functionality in SPSS).
- Download the current stable Amelia version from http://r.iq.harvard.edu/src/contrib/
- Decompress the *.tar.gz on your computer
- Open the file
emb.R in the folder
Find the following function:
There, replace the following lines:
order<-trunc(runif(nrow(x), min=1, max=nrow(x)+1))
## Changed part, instead of bootstrapping just use the
## whole data set
#order<-trunc(runif(nrow(x), min=1, max=nrow(x)+1))
cat("CAUTION: THIS VERSION OF AMELIA DOES NOT BOOTSTRAP!")
- Save the source file
- Compress the whole folder
- Install the packages from your just changed source (see here).
I tested it with Amelia v1.6.4 and it works fine. Amelia now just uses the whole dataset for EM imputation.