Hi Tjun Kiat Teo,

you try to fit a Normal mixture to some data. The Normal mixture is very 
delicate when it comes to parameter search: If the variance gets closer and 
closer to zero, the log Likelihood becomes larger and larger for any values of 
the remaining parameters. Furthermore for the EM algorithm it is known, that it 
takes sometimes very long until convergence is reached. 

Try the following: 

Use as starting values for the component parameters:

start.par <- mean(your.data, na.rm = TRUE) + sd(your.data, na.rm = TRUE) * 
runif(K)

For the weights just use either 1/K or the R cluster function with K clusters

Here K is the number of components. Further enlarge the maximum number of 
iterations. What you could also try is to randomize start parameters and run an 
SEM (Stochastic EM). In my opinion the better method is in this case a Bayesian 
method: MCMC.


Best

Simon


On Jul 16, 2013, at 10:59 PM, Tjun Kiat Teo <teotj...@gmail.com> wrote:

> I was trying to use the normixEM in mixtools and I got this error message.
> 
> And I got this error message
> 
> One of the variances is going to zero;  trying new starting values.
> Error in normalmixEM(as.matrix(temp[[gc]][, -(f + 1)])) : Too many tries!
> 
> Are there any other packages for fitting mixture distributions  ?
> 
> 
> Tjun Kiat Teo
> 
>       [[alternative HTML version deleted]]
> 
> ______________________________________________
> R-help@r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to