Implements the EM algorithm for parameterized Gaussian mixture models, starting with the expectation step.
em(modelName, data, parameters, prior = NULL, control = emControl(),
warn = NULL, …)
A character string indicating the model. The help file for
mclustModelNames
describes the available models.
A numeric vector, matrix, or data frame of observations. Categorical variables are not allowed. If a matrix or data frame, rows correspond to observations and columns correspond to variables.
A names list giving the parameters of the model. The components are as follows:
pro
Mixing proportions for the components of the mixture. If the model includes a Poisson term for noise, there should be one more mixing proportion than the number of Gaussian components.
mean
The mean for each component. If there is more than one component, this is a matrix whose kth column is the mean of the kth component of the mixture model.
variance
A list of variance parameters for the model.
The components of this list depend on the model
specification. See the help file for mclustVariance
for details.
Vinv
An estimate of the reciprocal hypervolume of the data region.
If set to NULL or a negative value, the default is determined by
applying function hypvol
to the data.
Used only when pro
includes an additional
mixing proportion for a noise component.
Specification of a conjugate prior on the means and variances. The default assumes no prior.
A list of control parameters for EM. The defaults are set by the call
emControl()
.
A logical value indicating whether or not a warning should be issued
when computations fail. The default is warn=FALSE
.
Catches unused arguments in indirect or list calls via do.call
.
A list including the following components:
A character string identifying the model (same as the input argument).
The number of observations in the data.
The dimension of the data.
The number of mixture components.
A matrix whose [i,k]
th entry is the
conditional probability of the ith observation belonging to
the kth component of the mixture.
pro
A vector whose kth component is the mixing proportion for the kth component of the mixture model. If the model includes a Poisson term for noise, there should be one more mixing proportion than the number of Gaussian components.
mean
The mean for each component. If there is more than one component, this is a matrix whose kth column is the mean of the kth component of the mixture model.
variance
A list of variance parameters for the model.
The components of this list depend on the model
specification. See the help file for mclustVariance
for details.
Vinv
The estimate of the reciprocal hypervolume of the data region used in the computation when the input indicates the addition of a noise component to the model.
The log likelihood for the data in the mixture model.
The list of control parameters for EM used.
The specification of a conjugate prior on the means and variances used,
NULL
if no prior is used.
"info"
Information on the iteration.
"WARNING"
An appropriate warning if problems are
encountered in the computations.
# NOT RUN {
msEst <- mstep(modelName = "EEE", data = iris[,-5],
z = unmap(iris[,5]))
names(msEst)
em(modelName = msEst$modelName, data = iris[,-5],
parameters = msEst$parameters)
do.call("em", c(list(data = iris[,-5]), msEst)) ## alternative call
# }
Run the code above in your browser using DataLab