I have a model that estimates two separate LCA's (two 4-class models for two sets of behaviors comprised of ordinal and dichotmous indicators) and regresses the later class variable on the first. In addition, I include some covariates and test a covariate by latent class interaction.
To determine appropriate class sizes for the two LCA's I ran each separately, first, and used the adjusted BIC, LMR-LRT, and entropy as a guide (data is complex sample, so I did not use Tech14). Then I ran a combined model informed by these separate results.
The reviews were very positive, but one reviewer suggests the need to test the validity of the local independence assumption -- referencing Garrett & Zeger (2000) Log-Odds Ratio Check or evaluation of the bivariate residuals (Vermunt & Magidson, 2000).
My questions -- is this assumption necessary to test (wouldn't non-indepence be relaxing this assumption of the method); are the two recommended tests appropriate for my data type (i.e., ordinal categorical) and model; and are the readily implemented in Mplus (my sense from Karen Nylund's 2007 paper is "no").
With regard to Tech10 -- is there a particular standard I should use in evaluating local independence? With 6 variables (each having 2 to 4 levels), there are a number of standardized residual z-scores in excess of |1.96|. Does the presence of any significant residuals pose a problem for the local independence assumption, or is there a "rule of thumb" regarding how many (or what percent) are significant? Would a significant residual indicate that I need to have a direct relation between two given indicators in the model?
Also, is there a way to request (or assess) the expected information matrix to formally check model identification (another request from the reviewer)? I see the ratio of smallest to largest eigenvalue in my output (0.137E-05), would that indicate that none of my eigenvalues equal "0" -- and, thus, my model is identified?
The first thing I would do is try one more class and see if the significant standardized residuals are still significant. It may be you need one more class.
Significant standardized residuals indicate that the assumption of conditional independence is not met. There is no rule of thumb here as to how many are acceptable. Each residual covariance is one dimension of integration so adding more than 4 may not be feasible.
If the information matrix is singular, we give a message. The ratio of smallest to largest eigenvalue in your output (0.137E-05) indicates that your model is identified.
I had run additional models with more classes, but the Adjusted BIC, LMR Likelihood Ratio Test, and entropy did not suggest these models were appropriate. Significant bivariate residuals are still present (assuming that I'm interpreting the output correctly -- would the absolute value of the standardized residual (z-score) > 1.96 indicate significance?).
Do such findings invalidate the model results? In the case of conflicting evidence (i.e., if standardized residuals did decrease) -- which set of standards should guide model selection? Vermunt appears to indicate there is a trade-off between local independence and class size (i.e., by relaxing this assumption and allowing direct relations among indicators you may reduce classes). However, by allowing such relations you may also ignore potentially meaningful classes. I don't recall a clear statement as to how to weigh the decision.
Also, would one relax this assumption by modeling a covariance between indicators? In the current model, for example, I am modeling substance use classes based upon categorical indicators of frequency of use for various substances. Would I have to indicate that some of the substances (tobacco and alcohol use) are also indendently associated with one another apart from the class structure that I am reporting?
I am using the bivariate results in TECH10 to evaluate local independence of an IRT mixture model and would like to clarify the following:
1) How are the standardized residuals calculated?
2) Are the standardized residuals expected to follow a particular distribution (e.g., as in Yen's Q3 statistic which, under multivariate normality, is expected to be normally distributed)?
3) Is the chi-square for the bivariate association the same as the chi-square for local independence suggested by Chen (1997)?
4) How are the degrees of freedom for the chi-square statistics calculated? Are they simply (row-1) * (columns-1) (e.g., Df = 4 two variables with 3 ordinal categories each) or must the number of estimated parameters (thresholds) be taken into account (e.g., DF = 5 for two variables with three ordinal categories each)?
The standardized residuals given in tech10 are the standardized Pearson residuals. See Agresti's Categorical Data Analysis book, Sections 3.3.1 and 4.5.5. The original article on this topic is The Analysis of Residuals in Cross-Classified Tables, Shelby J. Haberman, Biometrics, Vol. 29, No. 1 (Mar., 1973), pp. 205-220. They are normally distributed z-scores.
For the bivariate tables the standardized residuals are computed by (O-E)/[sqrt(E)*sqrt(1-E/n)]. O and E are the Observed and Expected (model estimated) quantities for a pattern in the categorical data.
Rob Dvorak posted on Friday, November 27, 2009 - 8:55 am
Hi Drs. Muthen,
I was wondering if there is a way to evaluate the Condition Number for the Information Matrix. I have been told that > 0.xE-06 is a rule of thumb, but I'm wondering if there is a citation I am missing (perhaps in the Mplus manual that I've missed). In my analysis, mine is currently 0.133E-04.
I don't know about citations, although I assume the numerical analysis literature would have something on it. Depending on the algorithm, I think our epsilon limit for calling it singular, and most likely non-identified, is E-09 or E-10. I think different sized models with different sized parameter values can influence whether or not a small value should be seen as an indicator of non-identification. Then there is also the matter of which estimator of the information matrix one uses. Mplus works with MLF, ML, and MLR. MLF seems to be most sensitive to possible singularity/non-identification.
I am trying to evaluate local independence for a LCA with a four class solution. I have requested tech 10 from mplus, but, I wasnt sure what part of the output under the bivariate model information section to interpret. I see z scores for the different combinations of variables as well as two chi square tests.
Hi. I am doing a CFA with one factor and ordinal categorical outcome variables. I have used multiple imputation with wlsmv. I guess I can't get the bivariate correlation of the standardized residuals to evaluate local independence. Is there another way I can get this information?
Hi. I am doing a CFA with one factor and ordinal categorical outcome variables. In order to evaluate local independence, I am using Reeve's >.2 criterion. The ouput I get with the following syntax shows correlations across categories. Is there a way I can collpase this to just show the resdiual correlation averaged across the indicators?
This is the syntax I used:
TITLE: CFA safety tbi mlr with tech 10_CC DATA: FILE IS "C:\Users\kathy\Desktop\shepherd_safety_project\ ControlFIle_cg_cc3_3_2012.dat"; VARIABLE: NAMES ARE cc1 cc2 cc3 cc4 cc5 cc6 cc7 cc8 cc9 cc10 cc11 cc12 cc13 cc14 cc15 cc16 cc17 cc18 cc19 cc20 cc21; CATEGORICAL ARE cc1 cc2 cc3 cc4 cc5 cc6 cc7 cc8 cc9 cc10 cc11 cc12 cc13 cc14 cc15 cc16 cc17 cc18 cc19 cc20 cc21; MISSING ARE ALL (9); ANALYSIS: Estimator=mlr; Model: f BY cc1 cc2 cc3 cc4 cc5 cc6 cc7 cc8 cc9 cc10 cc11 cc12 cc13 cc14 cc15 cc16 cc17 cc18 cc19 cc20 cc21; f@1; OUTPUT: tech10 SAMPSTAT; STAND; RESIDUAL; PATTERNS; SAVEDATA: FILE IS COGCAP_03022012cfa.DAT; FORMAT IS F2.0;
Andy Daniel posted on Wednesday, December 12, 2012 - 6:59 am
I'm running a LCA with repeated measures of one nominal variable in a longitudinal dataset (6 categories in each wave). It is very plausible that the Local Independence Assumption isn't met in this case and that the measurement errors are associated.
I was wondering if there is a way to check the Local Independence Assumption in this model with mplus. Due to the fact that the variables are nominal TECH10 is not provided.
The following question would be if it is possible to model the assocation between the measurement errors to deal with the violation of the LI-Assumption.
I requested tech 10 for my LCA; I have continuous indicators and one categorical indicator. In this output I only see info for the categorical indicator. How do I request residuals for the continuous indicators?
Also, I have another question about interpreting the odds ratio. latent class 1 compared to latent class 2 c4gen category > 1 1.266 p value .03 The categorical variable is gender whereby 1 = female and 2 = male. Would a correct interpretation be the following?
In comparison to class 2, those in class 1 are more likely to be male?
I am using tech10 to evaluate the conditional independence assumption of an LCA model.
I have 2 questions:
1) How do I calculate the degrees of freedom for the Overall Bivariate Pearson Chi-square posted at the very end of the tech10 output?
2) None of the individual bivariate standardized Pearson residuals are significant at |1.96|. However some of the Bivariate Pearson Chi-squares for variable pairs are significant (> 3.84). Should I consider these violations of the conditional independence assumption?
1) The distribution of the Overall Bivariate Pearson Chi-square statistic is not known. It is computed mostly for comparative purposes.
2) No. These are again computed for comparative purposes and I would not recommend a cutoff value. The proper use is as follows. Consider the "Chi-Square Test of Model Fit" in the "MODEL FIT INFORMATION" section. If the model is rejected examine tech10 tables and modify the model for pairs of variables with the largest Bivariate Pearson Chi-squares values. Modifications along the line of (page 8) are recommended http://www.statmodel.com/download/Version7.2LanguageAddendum.pdf
It is possible Evann but it will require a bot of programing on your end. 1) Generate 100 data sets according to your estimated model. Then compute tech10 statistics for each and assemble the values of these statistics to obtain the null hypothesis distribution of these statistics.
You can use the SVALUES option of the OUTPUT command to get the input with ending values as starting values and use those statements as input in MODEL POPULATION to generate data sets. See Chapter 12 for examples of Monte Carlo inputs.
Using the starting values, however, I'm now running into the error:
*** ERROR in MODEL POPULATION command One or more pairs of ordered thresholds are not increasing in Class 1. Check your population values. Problem with the following pairs: PT_EL$2 (-1.427) and PT_EL$3 (-1.427)
Please send the output with the SVALUES and the output with the error message along with your license number to email@example.com.
Evann Smith posted on Thursday, July 02, 2015 - 10:32 am
I've now successfully generated data and bootstrapped the distributions of my BVRs. Because my data is clustered, I did this in two steps (following the user's guide): 1) generate the data using the twolevel specification , 2) run the models using the complex specification.
A few of my bootstrapped p-values were significant. I've modeled the largest dependency using type=complex, parameterization=rescov, and the "with" statement in the model.
Now I'd like to generate new data and get new bootstrapped p-values for the BVRs, having modeled one local dependence.
I'm having trouble, however, figuring out how to generate clustered data that also had a "with" parameter. I keep getting the error that twolevel and rescov don't work together.
Is there a way to Montecarlo generate new clustered data that uses the model parameters from my new model that accounts for one local dependency?
where the factor loading of u2 is the covariance parameter. Note that in this case, each covariance requires one dimension of integration.
Evann Smith posted on Thursday, July 02, 2015 - 2:40 pm
I've been using type=mixture because the model for which I'm generating data and bootstrapping the BVRs is a latent class model.
For the first iteration (bootstrapping the BVRs for a clustered latent class model with all residual covaiances held at 0), I used "type=twolevel mixture" to generate the data and then "type=complex mixture" to bootstrap the BVRs.
Are you suggesting that for this second iteration (where I have parameters for a residual covariance) that I generate the data in the first step not as mixture model?