Hello, I have a concrete statistical question: I have a sample of an univariate mixture of an unknown number (k) of normal distributions, each time with an unknown mean `m_i' and a standard deviation `k * m_i', where k is known factor constant for all the normal distributions. (The `i' is a subscript.) Is there a function in R that can estimate the number of normal distributions k and the means `m_i' for the different normal distributions from a sample? Or evt. a function that can estimate the `m_i', when the number of distributions `k' is known? So far I only found a package, called `normix'. But at first sight it only provides methods to sample from such distributions and to estimate the densities; but not to fit such a distribution. Can someone indicate where I can find an elegant solution? Thank you in advance Joke Allemeersch Katholieke universiteit Leuven. Belgium.

Well, If k is known, you can use maximun likelihood to fit the weights, means, and sd's. The EM algorithm can be of help to solve the optimization problem. You would have to implement it yourself for your particular case, but I do not think it is big trouble. Then you could estimate k using Bayesian formalism: from a reasonable a priory distribution on k=1, 2,... compute the posterior distributions using the densities obtained above, etc. Carlos J. Gil Bellosta Sigma Consultores Estad?sticos http://www.consultoresestadisticos.com Joke Allemeersch wrote:> Hello, > > I have a concrete statistical question: > I have a sample of an univariate mixture of an unknown number (k) of > normal distributions, each time with an unknown mean `m_i' and a > standard deviation `k * m_i', where k is known factor constant for all > the normal distributions. (The `i' is a subscript.) > Is there a function in R that can estimate the number of normal > distributions k and the means `m_i' for the different normal > distributions from a sample? Or evt. a function that can estimate the > `m_i', when the number of distributions `k' is known? > So far I only found a package, called `normix'. But at first sight it > only provides methods to sample from such distributions and to > estimate the densities; but not to fit such a distribution. > Can someone indicate where I can find an elegant solution? > > Thank you in advance > > Joke Allemeersch > > Katholieke universiteit Leuven. > Belgium. > > ______________________________________________ > R-help at stat.math.ethz.ch mailing list > https://www.stat.math.ethz.ch/mailman/listinfo/r-help >

Hi, Did you get this dealt with OK. Cheers, Dave

Joke, Two other places to help you with your objectives in fitting univariate normal mixtures are: 1) The mclust package by Raftery and Fraley (available at CRAN). Their EMclust() function, for example, lets you specify a range of "number of components" to fit multiple models as well as the ability to specify whether to assume equal variances or not. The Schwarz (BIC / SBC) criterion is used to help distinguish goodness-of-fit amongst the models fitted. I have found the fitting routines to be more-than-quick enough under Linux, but did run into problems when running the same code under Windows. 2) The Venables & Ripley MASS book, Editions 4 and earlier, provide a very educational and useful discussion of analyses of mixture models beyond the fitting considerations (which are nicely covered as well). I do not have my book copy with me at the moment, but I believe in the 4th edition the material is covered in the last chapter entitled "Optimization". Hope that Helps. Best Regards, Bill ---------------------------------------- Bill Pikounis, Ph.D. Biometrics Research Department Merck Research Laboratories PO Box 2000, MailDrop RY33-300 126 E. Lincoln Avenue Rahway, New Jersey 07065-0900 USA v_bill_pikounis at merck.com Phone: 732 594 3913 Fax: 732 594 1565> -----Original Message----- > From: Joke Allemeersch [mailto:Joke.Allemeersch at esat.kuleuven.ac.be] > Sent: Thursday, July 17, 2003 11:58 AM > To: r-help at stat.math.ethz.ch > Subject: [R] univariate normal mixtures > > > Hello, > > I have a concrete statistical question: > I have a sample of an univariate mixture of an unknown number (k) of > normal distributions, each time with an unknown mean `m_i' and a > standard deviation `k * m_i', where k is known factor > constant for all > the normal distributions. (The `i' is a subscript.) > Is there a function in R that can estimate the number of normal > distributions k and the means `m_i' for the different normal > distributions from a sample? Or evt. a function that can > estimate the > `m_i', when the number of distributions `k' is known? > So far I only found a package, called `normix'. But at first > sight it > only provides methods to sample from such distributions and > to estimate > the densities; but not to fit such a distribution. > Can someone indicate where I can find an elegant solution? > > Thank you in advance > > Joke Allemeersch > > Katholieke universiteit Leuven. > Belgium. > > ______________________________________________ > R-help at stat.math.ethz.ch mailing list > https://www.stat.math.ethz.ch/mailman/listinfo/r-help >------------------------------------------------------------------------------ Notice: This e-mail message, together with any attachments, ...{{dropped}}