em.mix: EM Algorithm for Unrestricted General Location Model

Description Usage Arguments Value Note References See Also Examples

View source: R/mix.R


Computes maximum-likelihood estimates for the parameters of the unrestricted general location model from an incomplete mixed dataset.


em.mix(s, start, prior=1, maxits=1000, showits=TRUE, eps=0.0001)



summary list of an incomplete data matrix produced by the function prelim.mix.


optional starting value of the parameter. This is a parameter list in packed storage, such as one returned by this function or by da.mix. If structural zeros appear in the contingency table, start$pi should contain zeros in those positions and ones elsewhere. If no starting value is supplied, em.mix chooses its own appropriate starting value.


Optional vector or array of hyperparameters for a Dirichlet prior distribution. By default, uses a uniform prior on the cell probabilities (all hyperparameters set to one). EM algorithm finds the posterior mode, which under a uniform prior is the same as a maximum-likelihood estimate. If structural zeros appear in the table, the corresponding hyperparameters should be set to NA.


maximum number of iterations performed. The algorithm will stop if the parameter still has not converged after this many iterations.


if TRUE, reports the iterations of EM so the user can monitor the progress of the algorithm.


optional convergence criterion. The algorithm stops when the maximum relative difference in every parameter from one iteration to the next is less than or equal to this value.


a list representing the maximum-likelihood estimates (or posterior mode) of the normal parameters. This list contains cell probabilities, cell means, and covariances. The parameter can be transformed back to the original scale and put into a more understandable format by the function getparam.mix.


If zero cell counts occur in the complete-data table, the maximum likelihood estimate may not be unique, and the algorithm may converge to different stationary values depending on the starting value. Also, if zero cell counts occur in the complete-data table, the ML estimate may lie on the boundary of the parameter space.


Schafer, J. L. (1996) Analysis of Incomplete Multivariate Data. Chapman \& Hall, Chapter 9.

See Also

prelim.mix, getparam.mix, and ecm.mix.


s <- prelim.mix(stlouis,3)    # do preliminary manipulations
thetahat <- em.mix(s)   # compute ML estimate
getparam.mix(s,thetahat, corr=TRUE) # look at estimated parameters

mix documentation built on June 20, 2017, 9:13 a.m.