In my online questionnaire I have three questions to measure a construct called risk. When testing the partial measurement invariance, 2 of the 3 items turn out to have a significant difference across the countries (the questionnaire was completed by respondents from 3 different countries). The output also contains several warning messages which I find difficult to interpret.
When I drop 1 item and want to test again I get the error model did not converge. Is it possible to test measurement invariance with 2 items?
The construct risk is an important variable in my conceptual model and I would like to be able to include it. Does anyone have suggestions or tips?
> conf <- "
+ Risk =~ NA*Q7_1 + Q7_2 + Q7_3
+ "
>
> weak <- "
+ Risk =~ NA*Q7_1 + Q7_2 + Q7_3
+ "
>
> configural <- cfa(conf, data = DSCP_new,
std.lv = TRUE, group="Country")
> weak <- cfa(weak, data = DSCP_new, group="Country", group.equal="loadings")
Warning message:
In lav_model_vcov(lavmodel = lavmodel, lavsamplestats = lavsamplestats, :
lavaan WARNING:
The variance-covariance matrix of the estimated parameters (vcov)
does not appear to be positive definite! The smallest eigenvalue
(= 3.516467e-19) is close to zero. This may be a symptom that the
model is not identified.
> models <- list(fit.configural = configural, fit.loadings = weak)
> partialInvariance(models, "metric") #Q7_1 and Q7_2 significant
$`estimates`
poolest load:3 load:2 load:1 std:3 std:2 std:1 diff_std:2 vs. 3 diff_std:1 vs. 3
Risk=~Q7_1 1.046122 0.9549009 1.042294 1.107101 0.7576693 0.8270119 0.8784330 0.06934259 0.120763732
Risk=~Q7_2 1.053865 1.1812193 1.019875 1.026996 0.9812245 0.8471975 0.8531130 -0.13402701 -0.128111496
Risk=~Q7_3 1.021755 0.9941885 1.067469 0.999383 0.8430777 0.9052201 0.8474827 0.06214241 0.004405007
q:2 vs. 3 q:1 vs. 3 diff_mean:2 vs. 3 diff_mean:1 vs. 3 low_fscore:2 vs. 3 low_fscore:1 vs. 3
Risk=~Q7_1 0.1878868 0.37814360 0.057444123 0.09535405 -0.09440078 -0.1690917
Risk=~Q7_2 -1.0833202 -1.06198017 -0.003531735 -0.12056076 0.28036640 0.1508070
Risk=~Q7_3 0.2686772 0.01542999 -0.205186663 -0.35193410 -0.33048359 -0.3608159
high_fscore:2 vs. 3 high_fscore:1 vs. 3
Risk=~Q7_1 0.20928903 0.3597998
Risk=~Q7_2 -0.28742987 -0.3919286
Risk=~Q7_3 -0.07988974 -0.3430523
$results
free.chi free.df free.p free.cfi fix.chi fix.df fix.p fix.cfi wald.chi wald.df
Risk=~Q7_1 9.764141 2 0.007581301 -0.001770460 20.774822 2 3.081802e-05 -4.281230e-03 21.864248 2
Risk=~Q7_2 12.616815 2 0.001820931 -0.002420957 1.493092 2 4.740009e-01 9.992007e-16 1.491717 2
Risk=~Q7_3 3.896155 2 0.142547844 -0.000432381 17.078190 2 1.956672e-04 -3.438286e-03 17.259112 2
wald.p
Risk=~Q7_1 0.0000178747
Risk=~Q7_3 0.0001787440
Warning messages:
1: In lav_model_vcov(lavmodel = lavmodel, lavsamplestats = lavsamplestats, :
lavaan WARNING:
The variance-covariance matrix of the estimated parameters (vcov)
does not appear to be positive definite! The smallest eigenvalue
(= 6.419751e-19) is close to zero. This may be a symptom that the
model is not identified.
2: In lav_model_vcov(lavmodel = lavmodel, lavsamplestats = lavsamplestats, :
lavaan WARNING:
The variance-covariance matrix of the estimated parameters (vcov)
does not appear to be positive definite! The smallest eigenvalue
(= 8.220385e-19) is close to zero. This may be a symptom that the
model is not identified.
3: In lav_model_vcov(lavmodel = lavmodel, lavsamplestats = lavsamplestats, :
lavaan WARNING:
The variance-covariance matrix of the estimated parameters (vcov)
does not appear to be positive definite! The smallest eigenvalue
(= 4.963963e-19) is close to zero. This may be a symptom that the
model is not identified.