multmixEM {mixtools} | R Documentation |
EM Algorithm for Mixtures of Multinomials
Description
Return EM algorithm output for mixtures of multinomial distributions.
Usage
multmixEM(y, lambda = NULL, theta = NULL, k = 2,
maxit = 10000, epsilon = 1e-08, verb = FALSE)
Arguments
y |
Either An nxp matrix of data (multinomial counts), where n is the
sample size and p is the number of multinomial bins, or the
output of the |
lambda |
Initial value of mixing proportions. Entries should sum to
1. This determines number of components. If NULL, then |
theta |
Initial value of |
k |
Number of components. Ignored unless |
epsilon |
The convergence criterion. |
maxit |
The maximum number of iterations. |
verb |
If TRUE, then various updates are printed during each iteration of the algorithm. |
Value
multmixEM
returns a list of class mixEM
with items:
y |
The raw data. |
lambda |
The final mixing proportions. |
theta |
The final multinomial parameters. |
loglik |
The final log-likelihood. |
posterior |
An nxk matrix of posterior probabilities for observations. |
all.loglik |
A vector of each iteration's log-likelihood. |
restarts |
The number of times the algorithm restarted due to unacceptable choice of initial values. |
ft |
A character vector giving the name of the function. |
References
McLachlan, G. J. and Peel, D. (2000) Finite Mixture Models, John Wiley and Sons, Inc.
Elmore, R. T., Hettmansperger, T. P. and Xuan, F. (2004) The Sign Statistic, One-Way Layouts and Mixture Models, Statistical Science 19(4), 579–587.
See Also
compCDF
, makemultdata
, multmixmodel.sel
Examples
## The sulfur content of the coal seams in Texas
set.seed(100)
A <- c(1.51, 1.92, 1.08, 2.04, 2.14, 1.76, 1.17)
B <- c(1.69, 0.64, .9, 1.41, 1.01, .84, 1.28, 1.59)
C <- c(1.56, 1.22, 1.32, 1.39, 1.33, 1.54, 1.04, 2.25, 1.49)
D <- c(1.3, .75, 1.26, .69, .62, .9, 1.2, .32)
E <- c(.73, .8, .9, 1.24, .82, .72, .57, 1.18, .54, 1.3)
dis.coal <- makemultdata(A, B, C, D, E,
cuts = median(c(A, B, C, D, E)))
em.out <- multmixEM(dis.coal)
em.out[1:4]