library(lavaan)
library(psych)
library(lavaan)
library(semPlot)
library(semTools)
library(readxl)
library(haven)
library(tidyverse)
library(psych)
library(Hmisc)
AI_Chatbot_Project_5 <- read_sav("AI Chatbot Project 5.sav")
model<- '
# measurement model
## control
Expec =~ Expec_1 + Expec_2 + Expec_3 + Expec_4
#Gen =~ 1*Gender
Inno =~ Inno_1 + Inno_2 + Inno_3
## core
Anx =~ Anx_1 + Anx_2 + Anx_3 + Anx_4
Frus =~ Frus_1 + Frus_3
Anger =~ Anger_1 + Anger_2 + Anger_3
HBH =~ HBH_1 + HBH_2 + HBH_3 + HBH_4
CBH =~ CBH_1 + CBH_2 + CBH_3
# correlations
HBH_3 ~~ HBH_4
HBH_1 ~~ HBH_2
HBH_2 ~~ HBH_3
HBH_2 ~~ HBH_4
Anger_2 ~~ Anger_3
Anger_1 ~~ Anger_3
'
fit <- cfa(model, AI_Chatbot_Project_5)
summary(fit, fit.measures = TRUE, standardized=TRUE)
#fit <- cfa(model, AI_Chatbot_Project_5, se="bootstrap", bootstrap=5000)
parameterEstimates(fit, ci=TRUE, level=0.95, boot.ci.type="perc")
modindices(fit, minimum.value = 10, sort = TRUE)
ratio<-fitMeasures(fit,c("chisq"))/fitMeasures(fit,c("df"))
htmt(model, AI_Chatbot_Project_5)
fitMeasures(fit,c("chisq","df","cfi","tli","rmsea","srmr"))CFA
This is my CFA.
SEM
library(lavaan)
library(psych)
library(lavaan)
library(semPlot)
library(semTools)
library(readxl)
library(haven)
library(tidyverse)
library(psych)
library(Hmisc)
AI_Chatbot_Project_5 <- read_sav("AI Chatbot Project 5.sav")
model<- '
# measurement model
## control
Expec =~ Expec_1 + Expec_2 + Expec_3 + Expec_4
#Gen =~ 1*Gender
Inno =~ Inno_1 + Inno_2 + Inno_3
## core
Anx =~ Anx_1 + Anx_2 + Anx_3 + Anx_4
Frus =~ Frus_1 + Frus_3
Anger =~ Anger_1 + Anger_2
HBH =~ HBH_1 + HBH_2 + HBH_3 + HBH_4
CBH =~ CBH_1 + CBH_2 + CBH_3
# correlations
HBH_3 ~~ HBH_4
HBH_1 ~~ HBH_2
HBH_2 ~~ HBH_3
HBH_2 ~~ HBH_4
Inno_1 ~~ Inno_2
Frus ~~ Anger
# Relationship
HBH ~ Anger + Expec + Inno
CBH ~ Frus + Expec + Inno
Frus ~ Anx
Anger ~ Anx
'
fit <- cfa(model, AI_Chatbot_Project_5)
summary(fit, fit.measures = TRUE, standardized=TRUE)lavaan 0.6-19 ended normally after 84 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 62
Number of observations 498
Model Test User Model:
Test statistic 557.212
Degrees of freedom 191
P-value (Chi-square) 0.000
Model Test Baseline Model:
Test statistic 13575.651
Degrees of freedom 231
P-value 0.000
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.973
Tucker-Lewis Index (TLI) 0.967
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -13846.221
Loglikelihood unrestricted model (H1) NA
Akaike (AIC) 27816.441
Bayesian (BIC) 28077.499
Sample-size adjusted Bayesian (SABIC) 27880.708
Root Mean Square Error of Approximation:
RMSEA 0.062
90 Percent confidence interval - lower 0.056
90 Percent confidence interval - upper 0.068
P-value H_0: RMSEA <= 0.050 0.001
P-value H_0: RMSEA >= 0.080 0.000
Standardized Root Mean Square Residual:
SRMR 0.089
Parameter Estimates:
Standard errors Standard
Information Expected
Information saturated (h1) model Structured
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Expec =~
Expec_1 1.000 1.270 0.933
Expec_2 1.041 0.031 33.976 0.000 1.323 0.901
Expec_3 0.795 0.042 19.118 0.000 1.010 0.687
Expec_4 1.177 0.033 36.153 0.000 1.495 0.922
Inno =~
Inno_1 1.000 1.156 0.741
Inno_2 0.859 0.037 23.099 0.000 0.992 0.744
Inno_3 1.336 0.074 18.093 0.000 1.544 0.981
Anx =~
Anx_1 1.000 1.276 0.904
Anx_2 1.017 0.026 39.305 0.000 1.298 0.969
Anx_3 0.971 0.027 35.521 0.000 1.239 0.933
Anx_4 0.869 0.040 21.487 0.000 1.109 0.743
Frus =~
Frus_1 1.000 1.343 0.931
Frus_3 1.081 0.025 43.914 0.000 1.453 0.978
Anger =~
Anger_1 1.000 1.633 0.975
Anger_2 1.027 0.023 44.386 0.000 1.677 0.931
HBH =~
HBH_1 1.000 1.588 0.949
HBH_2 1.042 0.020 51.270 0.000 1.655 0.964
HBH_3 1.054 0.028 38.241 0.000 1.673 0.936
HBH_4 1.064 0.029 37.297 0.000 1.690 0.929
CBH =~
CBH_1 1.000 1.568 0.969
CBH_2 1.024 0.017 59.534 0.000 1.606 0.977
CBH_3 0.859 0.027 32.033 0.000 1.347 0.845
Regressions:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
HBH ~
Anger 0.689 0.033 20.812 0.000 0.709 0.709
Expec -0.089 0.062 -1.437 0.151 -0.071 -0.071
Inno 0.194 0.068 2.853 0.004 0.141 0.141
CBH ~
Frus 0.676 0.043 15.586 0.000 0.579 0.579
Expec -0.107 0.068 -1.566 0.117 -0.087 -0.087
Inno 0.073 0.074 0.987 0.324 0.054 0.054
Frus ~
Anx 0.086 0.049 1.759 0.079 0.081 0.081
Anger ~
Anx 0.188 0.059 3.186 0.001 0.147 0.147
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.HBH_3 ~~
.HBH_4 0.272 0.046 5.932 0.000 0.272 0.643
.HBH_1 ~~
.HBH_2 0.064 0.031 2.074 0.038 0.064 0.264
.HBH_2 ~~
.HBH_3 0.073 0.033 2.212 0.027 0.073 0.253
.HBH_4 0.086 0.034 2.546 0.011 0.086 0.282
.Inno_1 ~~
.Inno_2 0.416 0.062 6.678 0.000 0.416 0.446
.Frus ~~
.Anger 1.863 0.135 13.785 0.000 0.862 0.862
Expec ~~
Inno 1.013 0.099 10.212 0.000 0.690 0.690
Anx -0.254 0.077 -3.293 0.001 -0.157 -0.157
Inno ~~
Anx -0.397 0.074 -5.349 0.000 -0.269 -0.269
.HBH ~~
.CBH 1.019 0.085 11.988 0.000 0.717 0.717
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.Expec_1 0.242 0.025 9.625 0.000 0.242 0.130
.Expec_2 0.404 0.034 11.817 0.000 0.404 0.187
.Expec_3 1.142 0.076 15.005 0.000 1.142 0.528
.Expec_4 0.397 0.038 10.543 0.000 0.397 0.151
.Inno_1 1.094 0.086 12.752 0.000 1.094 0.450
.Inno_2 0.794 0.063 12.687 0.000 0.794 0.446
.Inno_3 0.093 0.088 1.058 0.290 0.093 0.038
.Anx_1 0.366 0.028 12.909 0.000 0.366 0.184
.Anx_2 0.108 0.017 6.283 0.000 0.108 0.060
.Anx_3 0.227 0.021 11.020 0.000 0.227 0.129
.Anx_4 0.997 0.066 15.063 0.000 0.997 0.448
.Frus_1 0.278 0.027 10.145 0.000 0.278 0.133
.Frus_3 0.094 0.025 3.779 0.000 0.094 0.043
.Anger_1 0.139 0.029 4.772 0.000 0.139 0.050
.Anger_2 0.430 0.041 10.603 0.000 0.430 0.133
.HBH_1 0.281 0.040 7.056 0.000 0.281 0.100
.HBH_2 0.208 0.046 4.498 0.000 0.208 0.071
.HBH_3 0.397 0.048 8.288 0.000 0.397 0.124
.HBH_4 0.451 0.051 8.783 0.000 0.451 0.136
.CBH_1 0.160 0.022 7.384 0.000 0.160 0.061
.CBH_2 0.125 0.022 5.822 0.000 0.125 0.046
.CBH_3 0.729 0.049 14.766 0.000 0.729 0.287
Expec 1.614 0.118 13.643 0.000 1.000 1.000
Inno 1.336 0.147 9.119 0.000 1.000 1.000
Anx 1.629 0.125 12.995 0.000 1.000 1.000
.Frus 1.792 0.132 13.621 0.000 0.993 0.993
.Anger 2.609 0.176 14.808 0.000 0.978 0.978
.HBH 1.241 0.096 12.914 0.000 0.492 0.492
.CBH 1.626 0.113 14.349 0.000 0.661 0.661
#fit <- cfa(model, AI_Chatbot_Project_5, se="bootstrap", bootstrap=5000)
parameterEstimates(fit, ci=TRUE, level=0.95, boot.ci.type="perc") lhs op rhs est se z pvalue ci.lower ci.upper
1 Expec =~ Expec_1 1.000 0.000 NA NA 1.000 1.000
2 Expec =~ Expec_2 1.041 0.031 33.976 0.000 0.981 1.101
3 Expec =~ Expec_3 0.795 0.042 19.118 0.000 0.713 0.876
4 Expec =~ Expec_4 1.177 0.033 36.153 0.000 1.113 1.241
5 Inno =~ Inno_1 1.000 0.000 NA NA 1.000 1.000
6 Inno =~ Inno_2 0.859 0.037 23.099 0.000 0.786 0.931
7 Inno =~ Inno_3 1.336 0.074 18.093 0.000 1.191 1.481
8 Anx =~ Anx_1 1.000 0.000 NA NA 1.000 1.000
9 Anx =~ Anx_2 1.017 0.026 39.305 0.000 0.966 1.068
10 Anx =~ Anx_3 0.971 0.027 35.521 0.000 0.917 1.025
11 Anx =~ Anx_4 0.869 0.040 21.487 0.000 0.790 0.948
12 Frus =~ Frus_1 1.000 0.000 NA NA 1.000 1.000
13 Frus =~ Frus_3 1.081 0.025 43.914 0.000 1.033 1.130
14 Anger =~ Anger_1 1.000 0.000 NA NA 1.000 1.000
15 Anger =~ Anger_2 1.027 0.023 44.386 0.000 0.982 1.072
16 HBH =~ HBH_1 1.000 0.000 NA NA 1.000 1.000
17 HBH =~ HBH_2 1.042 0.020 51.270 0.000 1.002 1.082
18 HBH =~ HBH_3 1.054 0.028 38.241 0.000 1.000 1.108
19 HBH =~ HBH_4 1.064 0.029 37.297 0.000 1.008 1.120
20 CBH =~ CBH_1 1.000 0.000 NA NA 1.000 1.000
21 CBH =~ CBH_2 1.024 0.017 59.534 0.000 0.990 1.058
22 CBH =~ CBH_3 0.859 0.027 32.033 0.000 0.806 0.911
23 HBH_3 ~~ HBH_4 0.272 0.046 5.932 0.000 0.182 0.362
24 HBH_1 ~~ HBH_2 0.064 0.031 2.074 0.038 0.003 0.124
25 HBH_2 ~~ HBH_3 0.073 0.033 2.212 0.027 0.008 0.137
26 HBH_2 ~~ HBH_4 0.086 0.034 2.546 0.011 0.020 0.153
27 Inno_1 ~~ Inno_2 0.416 0.062 6.678 0.000 0.294 0.538
28 Frus ~~ Anger 1.863 0.135 13.785 0.000 1.599 2.128
29 HBH ~ Anger 0.689 0.033 20.812 0.000 0.624 0.754
30 HBH ~ Expec -0.089 0.062 -1.437 0.151 -0.211 0.032
31 HBH ~ Inno 0.194 0.068 2.853 0.004 0.061 0.327
32 CBH ~ Frus 0.676 0.043 15.586 0.000 0.591 0.761
33 CBH ~ Expec -0.107 0.068 -1.566 0.117 -0.241 0.027
34 CBH ~ Inno 0.073 0.074 0.987 0.324 -0.072 0.219
35 Frus ~ Anx 0.086 0.049 1.759 0.079 -0.010 0.181
36 Anger ~ Anx 0.188 0.059 3.186 0.001 0.072 0.303
37 Expec_1 ~~ Expec_1 0.242 0.025 9.625 0.000 0.193 0.291
38 Expec_2 ~~ Expec_2 0.404 0.034 11.817 0.000 0.337 0.470
39 Expec_3 ~~ Expec_3 1.142 0.076 15.005 0.000 0.993 1.292
40 Expec_4 ~~ Expec_4 0.397 0.038 10.543 0.000 0.323 0.470
41 Inno_1 ~~ Inno_1 1.094 0.086 12.752 0.000 0.926 1.262
42 Inno_2 ~~ Inno_2 0.794 0.063 12.687 0.000 0.671 0.916
43 Inno_3 ~~ Inno_3 0.093 0.088 1.058 0.290 -0.079 0.266
44 Anx_1 ~~ Anx_1 0.366 0.028 12.909 0.000 0.311 0.422
45 Anx_2 ~~ Anx_2 0.108 0.017 6.283 0.000 0.074 0.142
46 Anx_3 ~~ Anx_3 0.227 0.021 11.020 0.000 0.187 0.268
47 Anx_4 ~~ Anx_4 0.997 0.066 15.063 0.000 0.868 1.127
48 Frus_1 ~~ Frus_1 0.278 0.027 10.145 0.000 0.224 0.331
49 Frus_3 ~~ Frus_3 0.094 0.025 3.779 0.000 0.045 0.143
50 Anger_1 ~~ Anger_1 0.139 0.029 4.772 0.000 0.082 0.197
51 Anger_2 ~~ Anger_2 0.430 0.041 10.603 0.000 0.350 0.509
52 HBH_1 ~~ HBH_1 0.281 0.040 7.056 0.000 0.203 0.359
53 HBH_2 ~~ HBH_2 0.208 0.046 4.498 0.000 0.117 0.299
54 HBH_3 ~~ HBH_3 0.397 0.048 8.288 0.000 0.303 0.491
55 HBH_4 ~~ HBH_4 0.451 0.051 8.783 0.000 0.351 0.552
56 CBH_1 ~~ CBH_1 0.160 0.022 7.384 0.000 0.117 0.202
57 CBH_2 ~~ CBH_2 0.125 0.022 5.822 0.000 0.083 0.168
58 CBH_3 ~~ CBH_3 0.729 0.049 14.766 0.000 0.632 0.826
59 Expec ~~ Expec 1.614 0.118 13.643 0.000 1.382 1.845
60 Inno ~~ Inno 1.336 0.147 9.119 0.000 1.049 1.623
61 Anx ~~ Anx 1.629 0.125 12.995 0.000 1.383 1.875
62 Frus ~~ Frus 1.792 0.132 13.621 0.000 1.534 2.050
63 Anger ~~ Anger 2.609 0.176 14.808 0.000 2.264 2.955
64 HBH ~~ HBH 1.241 0.096 12.914 0.000 1.052 1.429
65 CBH ~~ CBH 1.626 0.113 14.349 0.000 1.404 1.849
66 Expec ~~ Inno 1.013 0.099 10.212 0.000 0.819 1.208
67 Expec ~~ Anx -0.254 0.077 -3.293 0.001 -0.405 -0.103
68 Inno ~~ Anx -0.397 0.074 -5.349 0.000 -0.542 -0.251
69 HBH ~~ CBH 1.019 0.085 11.988 0.000 0.853 1.186
modindices(fit, minimum.value = 10, sort = TRUE) lhs op rhs mi epc sepc.lv sepc.all sepc.nox
404 Anger_2 ~~ HBH_1 52.180 -0.139 -0.139 -0.399 -0.399
179 HBH =~ Anger_2 44.955 0.226 0.359 0.199 0.199
405 Anger_2 ~~ HBH_2 35.608 0.093 0.093 0.311 0.311
328 Anx_1 ~~ Anx_3 35.087 -0.165 -0.165 -0.572 -0.572
342 Anx_2 ~~ Anx_4 31.952 -0.147 -0.147 -0.448 -0.448
413 HBH_1 ~~ CBH_1 23.512 0.064 0.064 0.301 0.301
397 Anger_1 ~~ HBH_1 22.668 0.079 0.079 0.401 0.401
136 Frus =~ Anger_1 20.473 0.339 0.455 0.271 0.271
197 CBH =~ Anger_2 19.192 0.114 0.179 0.099 0.099
474 Anx ~ Frus 19.107 -0.689 -0.725 -0.725 -0.725
451 Frus ~ CBH 17.964 -0.131 -0.153 -0.153 -0.153
398 Anger_1 ~~ HBH_2 17.946 -0.057 -0.057 -0.337 -0.337
414 HBH_1 ~~ CBH_2 17.764 -0.055 -0.055 -0.296 -0.296
455 Anger ~ HBH 17.436 0.179 0.174 0.174 0.174
456 Anger ~ CBH 17.008 0.138 0.133 0.133 0.133
417 HBH_2 ~~ CBH_2 16.576 0.044 0.044 0.270 0.270
450 Frus ~ HBH 16.457 -0.132 -0.156 -0.156 -0.156
453 Frus ~ Expec 16.348 -0.113 -0.106 -0.106 -0.106
475 Anx ~ Anger 14.125 -0.492 -0.630 -0.630 -0.630
461 Expec ~ CBH 13.845 -0.183 -0.227 -0.227 -0.227
354 Anx_3 ~~ Anx_4 13.804 0.100 0.100 0.211 0.211
462 Expec ~ Frus 13.011 -0.120 -0.127 -0.127 -0.127
327 Anx_1 ~~ Anx_2 12.114 0.110 0.110 0.552 0.552
90 Inno =~ Expec_3 11.870 0.215 0.249 0.169 0.169
195 CBH =~ Frus_3 11.242 -0.074 -0.116 -0.078 -0.078
137 Frus =~ Anger_2 11.224 -0.252 -0.339 -0.188 -0.188
341 Anx_2 ~~ Anx_3 10.314 0.110 0.110 0.700 0.700
178 HBH =~ Anger_1 10.168 -0.095 -0.151 -0.090 -0.090
ratio<-fitMeasures(fit,c("chisq"))/fitMeasures(fit,c("df"))
htmt(model, AI_Chatbot_Project_5) Expec Inno Anx Frus Anger HBH CBH
Expec 1.000
Inno 0.677 1.000
Anx 0.160 0.280 1.000
Frus 0.311 0.264 0.068 1.000
Anger 0.227 0.222 0.148 0.850 1.000
HBH 0.121 0.030 0.134 0.536 0.731 1.000
CBH 0.209 0.132 0.134 0.579 0.608 0.784 1.000
fitMeasures(fit,c("chisq","df","cfi","tli","rmsea","srmr")) chisq df cfi tli rmsea srmr
557.212 191.000 0.973 0.967 0.062 0.089