Hello, I have a latent variable "Centrality" that I measured using five items (centrality_enjoyable, centrality_friends, centrality_central, centrality_organized, and centrality_lost). I have 3 groups to compare that come from 3 samples (birdwatchers, hunters, and anglers) and I need to check for measurement invariance. I have found guidance within Statalist and Statablog for syntax for configural, weak, and strong invariance. However, I have not been able to find guidance for partial strong invariance and I'm not sure if I have the syntax correct. Below, I describe the steps I have taken and include the syntax I have used.
1) I first ran a multi-group CFA fitting a model with all parameters estimated separately across groups to determine configural invariance. There was a good model fit for this configural model and the model was improved over my baseline model (p>0.05).
2) I then ran a model for weak/metric invariance with measurement coefficients constrained to be equal across groups. There was a good model fit for this weak/metric model and the model was improved over the configural model (p>0.05).
3) I then ran a model for strong/scalar invariance with intercepts equal AND coefficients equal across groups. There was a poor model fit for this strong/scalar model and the model was NOT improved over the weak/metric model (p<0.05).
4) I then ran a model for partial strong/scalar invariance by looking at modification indices to determine which item might improve the model when removed (highest MI value). There was a poor model fit for this partial strong/scalar model which allowed the intercept of one item (the one with the highest MI) to have different estimates across the 3 groups and the model was not improved over weak/metric model (p<0.05).
5) I then looked at MIs again and ran a 2nd partial strong/scalar model where I allowed the intercepts of two items (the two with the highest MIs) to have different estimates across the 3 groups. This is where I'm unsure if I have gotten the syntax correct and I have indicated this syntax in red below. If I've done it correctly, there is a poor model fit for this 2nd partial strong/scalar model which allowed the intercepts of two items (the two with the highest MIs) to have different estimates across the 3 groups and the model was not improved over weak/metric model (p<0.05).
My question is, have I gotten the syntax correct for the partial strong/scalar model with the intercepts of two items allowed to vary? If so, I believe I am done and have demonstrated configural and weak invariance, but not been able to demonstrate strong or partial strong invariance.
Below is my syntax:
*1) Configural invariance - run multi-group CFA fitting a model with all parameters estimated separately across groups. Set mean of Centrality to 0 and variance to 1 in all groups
sem (Centrality -> centrality_enjoyable centrality_friends centrality_central centrality_organized centrality_lost), variance(Centrality@1) mean(Centrality@0) ginvariant(none) group(sample_3)
estimates store configural
estat gof, stats(all)
*2) Weak/metric invariance - include ginvariant(mcoef) option in order to fit a model with measurement coefficients constrained to be equal across groups
sem (Centrality -> centrality_enjoyable centrality_friends centrality_central centrality_organized centrality_lost), variance(Centrality@1) mean(Centrality@0) ginvariant(mcoef) group(sample_3)
estimates store metric
estat gof, stats(all)
lrtest configural metric
*3) Strong/scalar invariance - include ginvariant (mcoef mcons) option to fit a model with intercepts equal AND coefficients equal across groups
sem (Centrality -> centrality_enjoyable centrality_friends centrality_central centrality_organized centrality_lost), variance(Centrality@1) mean(Centrality@0) ginvariant(mcoef mcons) group(sample_3)
estimates store scalar
estat gof, stats(all)
lrtest metric scalar
*4) Partial strong invariance - free one parameter at a time. Look at modification indices to determine which item may be causing the problem.
estat mindices
*the problem may lie with centrality_enjoyable from the modification indices so modify strong/scalar model by freeing the intercept for centrality_enjoyable, allowing the intercept for centrality_enjoyable to have different estimates across the 3 groups while all other centrality items are constrained to be equal across the 3 groups
sem (Centrality -> centrality_enjoyable centrality_friends centrality_central centrality_organized centrality_lost) (1: centrality_enjoyable <- Centrality _cons@i1) (2: centrality_enjoyable <- Centrality _cons@i2) (3: centrality_enjoyable <- Centrality _cons@i3), variance(Centrality@1) mean(Centrality@0) ginvariant(mcoef mcons) group(sample_3)
estimates store partial
estat gof, stats(all)
lrtest metric partial
*5) still poor model fit and significant p-value so look at MIs again
estat mindices
*centrality_enjoyable still has highest MI, centrality_organized has next highest MI
*5) partial strong/scalar model freeing BOTH centrality_enjoyable and centrality_organized at same time
sem (Centrality -> centrality_enjoyable centrality_friends centrality_central centrality_organized centrality_lost) (1: centrality_enjoyable <- Centrality _cons@i1) (2: centrality_enjoyable <- Centrality _cons@i2) (3: centrality_enjoyable <- Centrality _cons@i3) (1: centrality_organized <- Centrality _cons@i1) (2: centrality_organized <- Centrality _cons@i2) (3: centrality_organized <- Centrality _cons@i3), variance(Centrality@1) mean(Centrality@0) ginvariant(mcoef mcons) group(sample_3)
estimates store partial2
estat gof, stats(all)
lrtest metric partial2
Thank you! Your insight and experience is greatly appreciated. This is my first time posting to Statalist so I hope that I've provided sufficient background and information.
1) I first ran a multi-group CFA fitting a model with all parameters estimated separately across groups to determine configural invariance. There was a good model fit for this configural model and the model was improved over my baseline model (p>0.05).
2) I then ran a model for weak/metric invariance with measurement coefficients constrained to be equal across groups. There was a good model fit for this weak/metric model and the model was improved over the configural model (p>0.05).
3) I then ran a model for strong/scalar invariance with intercepts equal AND coefficients equal across groups. There was a poor model fit for this strong/scalar model and the model was NOT improved over the weak/metric model (p<0.05).
4) I then ran a model for partial strong/scalar invariance by looking at modification indices to determine which item might improve the model when removed (highest MI value). There was a poor model fit for this partial strong/scalar model which allowed the intercept of one item (the one with the highest MI) to have different estimates across the 3 groups and the model was not improved over weak/metric model (p<0.05).
5) I then looked at MIs again and ran a 2nd partial strong/scalar model where I allowed the intercepts of two items (the two with the highest MIs) to have different estimates across the 3 groups. This is where I'm unsure if I have gotten the syntax correct and I have indicated this syntax in red below. If I've done it correctly, there is a poor model fit for this 2nd partial strong/scalar model which allowed the intercepts of two items (the two with the highest MIs) to have different estimates across the 3 groups and the model was not improved over weak/metric model (p<0.05).
My question is, have I gotten the syntax correct for the partial strong/scalar model with the intercepts of two items allowed to vary? If so, I believe I am done and have demonstrated configural and weak invariance, but not been able to demonstrate strong or partial strong invariance.
Below is my syntax:
*1) Configural invariance - run multi-group CFA fitting a model with all parameters estimated separately across groups. Set mean of Centrality to 0 and variance to 1 in all groups
sem (Centrality -> centrality_enjoyable centrality_friends centrality_central centrality_organized centrality_lost), variance(Centrality@1) mean(Centrality@0) ginvariant(none) group(sample_3)
estimates store configural
estat gof, stats(all)
*2) Weak/metric invariance - include ginvariant(mcoef) option in order to fit a model with measurement coefficients constrained to be equal across groups
sem (Centrality -> centrality_enjoyable centrality_friends centrality_central centrality_organized centrality_lost), variance(Centrality@1) mean(Centrality@0) ginvariant(mcoef) group(sample_3)
estimates store metric
estat gof, stats(all)
lrtest configural metric
*3) Strong/scalar invariance - include ginvariant (mcoef mcons) option to fit a model with intercepts equal AND coefficients equal across groups
sem (Centrality -> centrality_enjoyable centrality_friends centrality_central centrality_organized centrality_lost), variance(Centrality@1) mean(Centrality@0) ginvariant(mcoef mcons) group(sample_3)
estimates store scalar
estat gof, stats(all)
lrtest metric scalar
*4) Partial strong invariance - free one parameter at a time. Look at modification indices to determine which item may be causing the problem.
estat mindices
*the problem may lie with centrality_enjoyable from the modification indices so modify strong/scalar model by freeing the intercept for centrality_enjoyable, allowing the intercept for centrality_enjoyable to have different estimates across the 3 groups while all other centrality items are constrained to be equal across the 3 groups
sem (Centrality -> centrality_enjoyable centrality_friends centrality_central centrality_organized centrality_lost) (1: centrality_enjoyable <- Centrality _cons@i1) (2: centrality_enjoyable <- Centrality _cons@i2) (3: centrality_enjoyable <- Centrality _cons@i3), variance(Centrality@1) mean(Centrality@0) ginvariant(mcoef mcons) group(sample_3)
estimates store partial
estat gof, stats(all)
lrtest metric partial
*5) still poor model fit and significant p-value so look at MIs again
estat mindices
*centrality_enjoyable still has highest MI, centrality_organized has next highest MI
*5) partial strong/scalar model freeing BOTH centrality_enjoyable and centrality_organized at same time
sem (Centrality -> centrality_enjoyable centrality_friends centrality_central centrality_organized centrality_lost) (1: centrality_enjoyable <- Centrality _cons@i1) (2: centrality_enjoyable <- Centrality _cons@i2) (3: centrality_enjoyable <- Centrality _cons@i3) (1: centrality_organized <- Centrality _cons@i1) (2: centrality_organized <- Centrality _cons@i2) (3: centrality_organized <- Centrality _cons@i3), variance(Centrality@1) mean(Centrality@0) ginvariant(mcoef mcons) group(sample_3)
estimates store partial2
estat gof, stats(all)
lrtest metric partial2
Thank you! Your insight and experience is greatly appreciated. This is my first time posting to Statalist so I hope that I've provided sufficient background and information.