Difference in MPLUS and MCLUST estimates PreviousNext
Mplus Discussion > Latent Variable Mixture Modeling >
 Joshua Rosenberg posted on Tuesday, November 14, 2017 - 3:21 pm
Hi, I am using both MPLUS and the widely-used MCLUST (https://cran.r-project.org/web/packages/mclust/index.html) package in R to estimate normal mixture models.

While the results are identical for simple datasets (e.g., using the iris dataset), the results are very different for larger datasets with variables that are not very normally distributed.

In looking as deeply as I can, both seem to use the EM algorithm for estimation, and I am curious as to why the results may be so divergent. Can you help me to understand why these results may be so different?

Thank you.
 Bengt O. Muthen posted on Wednesday, November 15, 2017 - 10:23 am
First make sure you have the same number of parameters in both runs. And the same maximum loglikelihood value.
 J.D. Haltigan posted on Saturday, January 04, 2020 - 1:10 am
As follow-up to this fairly dated thread: Would the Mplus defaults for LPA models as denoted in the UG (p. 182-83) correspond to the EEI model noted in table 3 of the freely available Scrucca et. al (2016) paper here:

 Bengt O. Muthen posted on Saturday, January 04, 2020 - 10:15 am
Yes, it looks like it is EEI, that is, the default within-class covariance matrix is diagonal with unequal variances across variables but equality across classes. Many alternative forms can be specified and the within-class distribution can even be skewt.
 J.D. Haltigan posted on Saturday, January 04, 2020 - 8:51 pm
Thanks, Bengt. It is interesting to me that in the mclust package several models are run simultaneously or are modeled simultaneously (i.e., different within class covariance structures) and then the best BIC is chosen as the target model (default), though the user can compare several different models using BIC plots and the model$BIC summary.

I am wondering if there is a Type 1 error sort of issue that could be at play. In Mplus each model would need specified separately, though I guess you could run a batch using mplusautomation.
 J.D. Haltigan posted on Monday, January 06, 2020 - 12:20 pm
Just bumping this up if chance to respond, Bengt.
 Bengt O. Muthen posted on Monday, January 06, 2020 - 4:11 pm
Seems like that the multiple model approach is simply done for exploration without a hypothesis being tested so no Type I error situation.
 J.D. Haltigan posted on Monday, January 06, 2020 - 4:59 pm
Thanks, Bengt. I am wondering what the ramifications are then by allowing within-class covariances among indicators and violating the LI assumption. I guess this to some degree depends on the inferences being made with regards to the mixture components/classes?
 J.D. Haltigan posted on Monday, January 06, 2020 - 9:31 pm
Just was reviewing Table 3 in more detail, Bengt, and was concerned that it might actually be the VEI not EEI model that is the equivalent of the default Mplus LPA setup. Was hoping you might be able to double-check to see if you think any differently (Table 3 in the linked Scrucca .pdf above).
 Bengt O. Muthen posted on Tuesday, January 07, 2020 - 2:23 pm
You can allow free covariances within class as we show in one UG example. That is, LPA and variations of it is not the only possible model. Ultimately, it is what fits best (or has the best BIC) that matters - and then hopefully the covariances have substantive meaning.

VEI allows a scalar difference across classes (lambda_k) so I think that's different from what we do as the default (although we can do that too).
 J.D. Haltigan posted on Tuesday, January 07, 2020 - 2:33 pm
Thanks, Bengt. I was getting tripped up a bit (it's a bit tricky to distinguish) and discussing the issue with a colleague as want to be sure which is the model from Scrucca et al. paper that maps onto Mplus default invoking LI. After some further thought we came back around to EEI, so this is reassuring to hear.
Back to top
Add Your Message Here
Username: Posting Information:
This is a private posting area. Only registered users and moderators may post messages here.
Options: Enable HTML code in message
Automatically activate URLs in message