I have conducted multiple mediation analysis (3 predictors+1control +3 mediators+1outcome)(all observed variables) using R-lavaan.
My full model, has bad RMSEA while the CFI seem ok (see outcome below).
I am wondering what can I do in order to improve my RMSEA to be RMSEA<0.08. 1)Shall I drop direct and indirect paths that are non significant, or is there another way?
2) I have 3 predictors(Py,Na,Ma), 1 control variable for the predictors (Ag), 3 mediators(Dm,Pr,Ld), and 1 outcome(Mo).
I want to use Ag as a control variable.
So I set the Ag path to 0 (in order to not predict anything)and I allowed it to covary with the predictors in order to control for that in my model. 2a) Is that the right way in order to control for something? Because when for example I delete completely this control variable(Ag), my other regressions/paths stay unchanged,and on top of that My RMSEA, when I deleted this control variable, become 000. 2b) Why might me this the case? How is it possible only 1 control variable to change RMSEA to 000?
note: In a multiple regression(lm()) I would just add Ag into my model in order to use it as a control for the predictors. However they have suggested to me that in SEM, I should allow Ag to covary with the predictors, and put its path to 0 in general, in order to make Ag a control variable (to the predictors)
My fit index including the one that I want as a control variable in the model:
Number of observations 333 Estimator ML Model Fit Test Statistic 45.881 Degrees of freedom 4 P-value (Chi-square) 0.000 Model test baseline model: Minimum Function Test Statistic 977.754 Degrees of freedom 28 P-value 0.000 User model versus baseline model: Comparative Fit Index (CFI) 0.956 Tucker-Lewis Index (TLI) 0.691 Loglikelihood and Information Criteria: Loglikelihood user model (H0) -3310.110 Loglikelihood unrestricted model (H1) -3287.169 Number of free parameters 32 Akaike (AIC) 6684.219 Bayesian (BIC) 6806.080 Sample-size adjusted Bayesian (BIC) 6704.574 Root Mean Square Error of Approximation: RMSEA 0.177 90 Percent Confidence Interval 0.133 0.225 P-value RMSEA <= 0.05 0.000 Standardized Root Mean Square Residual: SRMR 0.036 Parameter Estimates: Information Expected Information saturated (h1) model Structured Standard Errors Standardode here
Here is without the control variable:
Number of observations 333 Estimator ML Model Fit Test Statistic 0.000 Degrees of freedom 0 Minimum Function Value 0.0000000000000 Model test baseline model: Minimum Function Test Statistic 824.389 Degrees of freedom 21 P-value 0.000 User model versus baseline model: Comparative Fit Index (CFI) 1.000 Tucker-Lewis Index (TLI) 1.000 Loglikelihood and Information Criteria: Loglikelihood user model (H0) -2891.846 Loglikelihood unrestricted model (H1) -2891.846 Number of free parameters 28 Akaike (AIC) 5839.691 Bayesian (BIC) 5946.319 Sample-size adjusted Bayesian (BIC) 5857.502 Root Mean Square Error of Approximation: RMSEA 0.000 90 Percent Confidence Interval 0.000 0.000 P-value RMSEA <= 0.05 NA Standardized Root Mean Square Residual: SRMR 0.000 Parameter Estimates: Information Expected Information saturated (h1) model Structured Standard Errors Standard
Here is my code for the full model:
model.nodt<-'Mo_scaled~b1*Dm_scaled+b2*Pr_scaled+b3*Ld_scaled+c*Py_scaled+f*Na_scaled+h*Ma_scaled+0*Ag_scaled Dm_scaled~a1*Py_scaled+d1*Na_scaled+g1*Ma_scaled Pr_scaled~a2*Py_scaled+d2*Na_scaled+g2*Ma_scaled Ld_scaled~a3*Py_scaled+d3*Na_scaled+g3*Ma_scaled indirect1:=a1*b1 indirect2:=a2*b2 indirect3:=a3*b3 indirect4:=d1*b1 indirect5:=d2*b2 indirect6:=d3*b3 indirect7:=g1*b1 indirect8:=g2*b2 indirect9:=g3*b3 total:= f+c+h+(a1*b1) +(a2*b2)+(a3*b3)+(d1*b1)+(d2*b2)+(d3*b3)+(g1*b1)+(g2*b2)+(g3*b3) Dm_scaled~~Pr_scaled Pr_scaled~~Ld_scaled Ld_scaled~~Dm_scaled Na_scaled~~Py_scaled Na_scaled~~Ma_scaled Ma_scaled~~Py_scaled Ag_scaled~~Py_scaled Ag_scaled~~Na_scaled Ag_scaled~~Ma_scaled '