Semiparametric EM-like Algorithm for univariate symmetric location mixture
spEMsymloc.RdReturns semiparametric EM algorithm output (Bordes et al, 2007, and Benaglia et al, 2009) for location mixtures of univariate data and symmetric component density.
Usage
spEMsymloc(x, mu0, bw = bw.nrd0(x), h=bw, eps = 1e-8, maxiter = 100,
stochastic = FALSE, verbose = FALSE)Arguments
- x
A vector of length \(n\) consisting of the data.
- mu0
Either a vector specifying the initial centers for the kmeans function, and from which the number of component is obtained, or an integer \(m\) specifying the number of initial centers, which are then choosen randomly in kmeans.
- bw
Bandwidth for density estimation, equal to the standard deviation of the kernel density.
- h
Alternative way to specify the bandwidth, to provide backward compatibility.
- eps
Tolerance limit for declaring algorithm convergence. Convergence is declared before
maxiteriterations whenever the maximum change in any coordinate of thelambda(mixing proportion estimates) andmu(means) vector does not exceedeps.- maxiter
The maximum number of iterations allowed, for both stochastic and non-stochastic versions; for non-stochastic algorithms (
stochastic = FALSE), convergence may be declared beforemaxiteriterations (seeepsabove).- stochastic
Flag, if FALSE (the default), runs the non-stochastic version of the algorithm, as in Benaglia et al (2009). Set to TRUE to run a stochastic version which simulates the posteriors at each iteration (as in Bordes et al, 2007), and runs for
maxiteriterations.- verbose
If TRUE, print updates for every iteration of the algorithm as it runs
Value
spEMsymloc returns a list of class npEM with the following items:
- data
The raw data (an \(n\times r\) matrix).
- posteriors
An \(n\times m\) matrix of posterior probabilities for observations. If
stochastic = TRUE, this matrix is computed from an average over themaxiteriterations.- bandwidth
Same as the
bwinput argument, returned because this information is needed by any method that produces density estimates from the output.- lambda
The sequence of mixing proportions over iterations.
- lambdahat
The final estimate for mixing proportions if
stochastic = FALSE, the average over the sequence ifstochastic = TRUE.- mu
the sequence of component means over iterations.
- muhat
the final estimate of component means if
stochastic = FALSE, the average over the sequence ifstochastic = TRUE.- symmetric
Flag indicating that the kernel density estimate is using a symmetry assumption.
References
Benaglia, T., Chauveau, D., and Hunter, D. R., An EM-like algorithm for semi- and non-parametric estimation in multivariate mixtures, Journal of Computational and Graphical Statistics, 18, 505-526, 2009.
Benaglia, T., Chauveau, D., Hunter, D. R., and Young, D. mixtools: An R package for analyzing finite mixture models. Journal of Statistical Software, 32(6):1-29, 2009.
Bordes, L., Chauveau, D., and Vandekerkhove, P. (2007), An EM algorithm for a semiparametric mixture model, Computational Statistics and Data Analysis, 51: 5429-5443.