Finite mixture models


The new fmm: prefix command can be used with 17 Stata estimation commands to fit finite mixture models (FMMs). This means that with the fmm: prefix, we can now fit finite mixtures of regression models for continuous, binary, ordinal, count, categorical, and even survival-time outcomes.

The most typical use of fmm: is to fit one model and allow the parameters (coefficients, location, variance, scale, etc.) to vary across unobserved subpopulations. As with LCA, we call these unobserved subpopulations classes. Say we are interested in a linear regression and we believe there are three classes across which the parameters of the model might vary. Even though we have no variable recording the class membership, we can fit

. fmm 3: regress y x1 x2

Reported will be separate regression coefficients and intercepts for each class and a model for predicting membership in those classes.

In the same way, we can use fmm: logit for a binary outcome or fmm: streg for a survival-time outcome.
fmm: can even be used with multiple estimation commands simultaneously when the classes might follow different models. fmm: (regress y x1 x2) (poisson y x1 x2 x3) fits a linear regression in one class and a Poisson regression in another.

Postestimation commands are available to 1) estimate each class’s proportion in the overall population; 2) report marginal means of the outcome variables within class; and 3) predict probabilities of class membership and predicted outcomes.