In response to my question [at end of this message] on multiple
imputation, I received two replies. I thank Jim Schimert and Tim
Hesterberg for their very helpful comments. For those interested, I
copied Tim Hesterberg's reply below.
#-------- Tim Hesterberg wrote -------------------------
#Generate list of starting values using a bootstrap
start <- list()
for(i in 1:5)
start[[i]] <- paramIter(emGauss(cholesterol,
subset=sample(1:28,14,T), prior="ml")) # draw
5 imputations from 5 parallel chains, each run for 50 iterations
cholesterol.imp <- impGauss(cholesterol, prior="non",
start=start, control=list(niter=50))
Second, help(impGauss.methods) gives specifications for the `start'
argument, including this text:
For several chains, start may be a list of such lists, a class
"Gauss" object, or a list of "Gauss" objects.
For a list of lists, each interior list must contain the two
components mu and sigma. The number of imputations equals the
length of the outermost list.
A class "Gauss" object is the paramIter component of a class
"missmodel" object, produced by routines such as mdGauss,
daGauss, and emGauss. This is a matrix with as many rows as
there are imputations.
Third, this code:
for(i in 1:5)
start[i,] <- paramIter(emGauss(twin.d0, subset = sample(x =
1:nrow(twin.d0), size = 0.5*nrow(twin.d0), replace = T),
prior = 'ml'))[1,]
tries to shoehorn paramIter objects into columns of an ordinary matrix;
some information is lost.
Tim Hesterberg
#--------my question----------------------
I am trying to run multiple imputations through DA using the missing
data library [Splus 6R2, Win2K]. I was trying to write a start
function
but I am having trouble understanding how many columns need to
be in the
start matrix [code below]. In other words, what is the relation
between
columns in the start matrix and the number of variables
subsequently
used in the impGauss command?
Respectfully,
Frank R. Lawrence
|