Dear Statalisters,

I am using Stata17. I have run the following LCA model (the analysis try to group establishments on the basis of the balance between job demands and inducements and relative outcomes):

[CODE ]gsem (dischelp dischours discsugg motimon motimis motichal motilearn trmot trinn eicomp qwprel highmot <-, oprobit) [pweight=s5_wgt_final], lclass(C 4)[/CODE]

strangely the editor does not recognize this as code but the model converges, in Stata16 and 17.

Anyway, I used the drop down menu to re-write the code, which is recognized as a proper piece of code:

Code:
gsem (dischelp dischours discsugg motimon motimis motichal motilearn trinn trmot eicomp highmot qwprel <-) [pweight = s5_wgt_final], family(ordinal) link(probit) lclass(C 4)
then I used the modal posterior probability to derive class membership

Code:
predict classe*, classposteriorpr
egen max = rowmax(classe*)
generate hc_class = 1 if classe1==max
replace hc_class = 2 if classe2==max
replace hc_class = 3 if classe3==max
replace hc_class = 4 if classe4==max
finally I would like to use class membership in a bivariate ordered probit model to study the relationship between class membership and the incidence of training and on-the-job training (both in 5 classes, 0 - 20% 20 - 40, 40 - 60, 60 - 80, 80 - 100%) using cmp

Code:
cmp(paidtrain_1= i.hc_class jobcompx_1 contr_1 i.teams wpsupp supchek skillch dirinf eidelay_1 empperm_1 emppart_1 no_inno findskill pcwkmach_1 learnnoneed_1 i.actdede i.actprod i.est_size i.est_type i.mainact_d i.est_age i.er_pres1 i.pdemstab i.competmark i.country) (onjob_1= i.hc_class jobcompx_1 contr_1 i.teams wpsupp supchek skillch dirinf eidelay_1 empperm_1 emppart_1 no_inno findskill pcwkmach_1 learnnoneed_1 i.actdede i.actprod i.est_size i.est_type i.mainact_d i.est_age i.er_pres1 i.pdemstab i.competmark i.country ) [pweight= s5_wgt_final] , ind(1 1) cov(unstructured) vce(cluster country)
the LCA models used to derive class membership includes variables that have not been used in the bivariate ordered probit.

i.hc_class contains the 3 indicators of class membership (the first class is the reference group).

Here is the difficult part:
1. class membership derived using the posterior probability is measured with error. In the SEM literature there are ways to fix this by means of a weighting matrix (BHC method, the 3-step approach)

Bakk, Z., et al. (2013). "Estimating the Association between Latent Class Membership and External Variables Using Bias-adjusted Three-step Approaches." Sociological Methodology 43(1): 272-311.

Classes are nicely separated (the Entropy measure is 0.7) and the average probability of belonging to the assignment class is high (above 0.8) for all the 4 classes.


2. Since class membership is derived from a previous analysis the standard errors in the bivariate ordered probit model should be adjusted to reflect the uncertainty in the first step estimation.

Bakk, Z., et al. (2017). "Relating Latent Class Assignments to External Variables: Standard Errors for Correct Inference." Political Analysis 22(4): 520-540.

I have seen that these adjustments have been implemented in LatentGOLD (specialized LCA software) in a fully SEM context; which I am not familiar with.

Has anybody any experience in implementing the adjustments for measurement error in the class and the correction of the standard error outside the SEM framework in Stata?

Any kind of help is welcomed.

Thank you all.