spEMsymloc {mixtools} | R Documentation |
Semiparametric EM-like Algorithm for univariate symmetric location mixture
Description
Returns 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 |
mu0 |
Either a vector specifying the initial
centers for the kmeans function, and from which the number of
component is obtained, or an integer |
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 |
maxiter |
The maximum number of iterations allowed, for both
stochastic and non-stochastic versions;
for non-stochastic algorithms ( |
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 |
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 |
posteriors |
An |
bandwidth |
Same as the |
lambda |
The sequence of mixing proportions over iterations. |
lambdahat |
The final estimate for mixing proportions if |
mu |
the sequence of component means over iterations. |
muhat |
the final estimate of component means if |
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.
See Also
plot.npEM
, rnormmix
,
npEM
, spEMsymlocN01
, plotseq.npEM
Examples
## Example from a normal location mixture
set.seed(100)
n <- 200
lambda <- c(1/3,2/3)
mu <- c(0, 4); sigma<-rep(1, 2)
x <- rnormmix(n, lambda, mu, sigma)
out.stoc <- spEMsymloc(x, mu0=c(-1, 2), stochastic=TRUE)
out.nonstoc <- spEMsymloc(x, mu0=c(-1, 2))