library("psych")
library("lavaan")
## Warning: package 'lavaan' was built under R version 3.6.3
## This is lavaan 0.6-7
## lavaan is BETA software! Please report any bugs.
##
## Attaching package: 'lavaan'
## The following object is masked from 'package:psych':
##
## cor2cov
library("lavaanPlot")
## Warning: package 'lavaanPlot' was built under R version 3.6.3
library("semTools")
## Warning: package 'semTools' was built under R version 3.6.3
##
## ###############################################################################
## This is semTools 0.5-3
## All users of R (or SEM) are invited to submit functions or ideas for functions.
## ###############################################################################
##
## Attaching package: 'semTools'
## The following object is masked from 'package:psych':
##
## skew
library("lmtest")
## Warning: package 'lmtest' was built under R version 3.6.3
## Loading required package: zoo
## Warning: package 'zoo' was built under R version 3.6.3
##
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
##
## as.Date, as.Date.numeric
lower <- '
1.0
-.57 1.0
.65 -.42 1.0
-.12 .45 -.10 1.0
.82 -.53 .65 -.09 1.0
-.41 .75 -.26 .53 -.39 1.0
.62 -.39 .55 -.05 .79 -.25 1.0
-.48 .68 -.31 .38 -.42 .77 -.24 1.0
'
d <- getCov(lower, names=c("M1T1", "M1T2", "M2T1", "M2T2", "M3T1", "M3T2", "M4T1", "M4T2"))
#### Widamen 3c - the CTCM target model ####
model <- ' T1 =~ M1T1 + M2T1 + M3T1 + M4T1
T2 =~ M1T2 + M2T2 + M3T2 + M4T2
M1 =~ M1T1 + M1T2
M2 =~ M2T1 + M2T2
M3 =~ M3T1 + M3T2
M4 =~ M4T1 + M4T2
# traits and methods uncorrelated with one another
T1~~0*M1
T1~~0*M2
T1~~0*M3
T1~~0*M4
T2~~0*M1
T2~~0*M2
T2~~0*M3
T2~~0*M4
'
CTCM.out <- cfa(model, sample.cov = d, sample.nobs = 500, std.lv=TRUE)
## Warning in lav_model_estimate(lavmodel = lavmodel, lavpartable =
## lavpartable, : lavaan WARNING: the optimizer warns that a solution has NOT
## been found!
## Warning in lav_model_estimate(lavmodel = lavmodel, lavpartable =
## lavpartable, : lavaan WARNING: the optimizer warns that a solution has NOT
## been found!
## Warning in lav_model_estimate(lavmodel = lavmodel, lavpartable =
## lavpartable, : lavaan WARNING: the optimizer warns that a solution has NOT
## been found!
## Warning in lav_model_estimate(lavmodel = lavmodel, lavpartable =
## lavpartable, : lavaan WARNING: the optimizer warns that a solution has NOT
## been found!
lavaanPlot(model = CTCM.out)
summary(CTCM.out, fit.measures=TRUE, standardized=TRUE)
## lavaan 0.6-7 did NOT end normally after 10000 iterations
## ** WARNING ** Estimates below are most likely unreliable
##
## Estimator ML
## Optimization method NLMINB
## Number of free parameters 31
##
## Number of observations 500
##
## Model Test User Model:
##
## Test statistic NA
## Degrees of freedom NA
## Warning in .local(object, ...): lavaan WARNING: fit measures not available if model did not converge
##
## 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
## T1 =~
## M1T1 0.001 NA 0.001 0.001
## M2T1 0.001 NA 0.001 0.001
## M3T1 0.001 NA 0.001 0.001
## M4T1 0.001 NA 0.001 0.001
## T2 =~
## M1T2 0.822 NA 0.822 0.822
## M2T2 0.529 NA 0.529 0.530
## M3T2 0.939 NA 0.939 0.939
## M4T2 0.821 NA 0.821 0.820
## M1 =~
## M1T1 0.840 NA 0.840 0.839
## M1T2 -0.122 NA -0.122 -0.122
## M2 =~
## M2T1 0.608 NA 0.608 0.609
## M2T2 0.172 NA 0.172 0.172
## M3 =~
## M3T1 0.763 NA 0.763 0.763
## M3T2 0.114 NA 0.114 0.114
## M4 =~
## M4T1 18.413 NA 18.413 18.412
## M4T2 0.004 NA 0.004 0.004
##
## Covariances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## T1 ~~
## M1 0.000 0.000 0.000
## M2 0.000 0.000 0.000
## M3 0.000 0.000 0.000
## M4 0.000 0.000 0.000
## T2 ~~
## M1 0.000 0.000 0.000
## M2 0.000 0.000 0.000
## M3 0.000 0.000 0.000
## M4 0.000 0.000 0.000
## T1 ~~
## T2 -415.943 NA -415.943 -415.943
## M1 ~~
## M2 1.275 NA 1.275 1.275
## M3 1.284 NA 1.284 1.284
## M4 0.040 NA 0.040 0.040
## M2 ~~
## M3 1.404 NA 1.404 1.404
## M4 0.049 NA 0.049 0.049
## M3 ~~
## M4 0.056 NA 0.056 0.056
##
## Variances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## .M1T1 0.296 NA 0.296 0.295
## .M2T1 0.629 NA 0.629 0.630
## .M3T1 0.418 NA 0.418 0.418
## .M4T1 -338.039 NA -338.039 -337.991
## .M1T2 0.310 NA 0.310 0.309
## .M2T2 0.689 NA 0.689 0.690
## .M3T2 0.106 NA 0.106 0.106
## .M4T2 0.328 NA 0.328 0.327
## T1 1.000 1.000 1.000
## T2 1.000 1.000 1.000
## M1 1.000 1.000 1.000
## M2 1.000 1.000 1.000
## M3 1.000 1.000 1.000
## M4 1.000 1.000 1.000
CTCU model
modelCU <- ' T1 =~ M1T1 + M2T1 + M3T1 + M4T1
T2 =~ M1T2 + M2T2 + M3T2 + M4T2
#Correlated uniqueness for methods factors
M1T1 ~~ M1T2
M2T1 ~~ M2T2
M3T1 ~~ M3T2
M4T1 ~~ M4T2
'
CTCU.out <- cfa(modelCU, sample.cov = d, sample.nobs = 500, std.lv=TRUE)
summary(CTCU.out, fit.measures=TRUE, standardized=TRUE)
## lavaan 0.6-7 ended normally after 31 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of free parameters 21
##
## Number of observations 500
##
## Model Test User Model:
##
## Test statistic 178.869
## Degrees of freedom 15
## P-value (Chi-square) 0.000
##
## Model Test Baseline Model:
##
## Test statistic 2701.140
## Degrees of freedom 28
## P-value 0.000
##
## User Model versus Baseline Model:
##
## Comparative Fit Index (CFI) 0.939
## Tucker-Lewis Index (TLI) 0.886
##
## Loglikelihood and Information Criteria:
##
## Loglikelihood user model (H0) -4410.615
## Loglikelihood unrestricted model (H1) -4321.180
##
## Akaike (AIC) 8863.229
## Bayesian (BIC) 8951.736
## Sample-size adjusted Bayesian (BIC) 8885.081
##
## Root Mean Square Error of Approximation:
##
## RMSEA 0.148
## 90 Percent confidence interval - lower 0.129
## 90 Percent confidence interval - upper 0.168
## P-value RMSEA <= 0.05 0.000
##
## Standardized Root Mean Square Residual:
##
## SRMR 0.077
##
## 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
## T1 =~
## M1T1 0.820 0.036 22.826 0.000 0.820 0.837
## M2T1 0.687 0.040 17.154 0.000 0.687 0.685
## M3T1 0.968 0.033 28.923 0.000 0.968 0.971
## M4T1 0.806 0.038 21.431 0.000 0.806 0.803
## T2 =~
## M1T2 0.816 0.037 22.042 0.000 0.816 0.827
## M2T2 0.531 0.043 12.294 0.000 0.531 0.531
## M3T2 0.912 0.036 25.455 0.000 0.912 0.913
## M4T2 0.812 0.037 21.762 0.000 0.812 0.821
##
## Covariances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## .M1T1 ~~
## .M1T2 -0.059 0.016 -3.600 0.000 -0.059 -0.198
## .M2T1 ~~
## .M2T2 -0.029 0.029 -1.010 0.312 -0.029 -0.047
## .M3T1 ~~
## .M3T2 0.006 0.012 0.525 0.599 0.006 0.066
## .M4T1 ~~
## .M4T2 0.067 0.018 3.656 0.000 0.067 0.197
## T1 ~~
## T2 -0.511 0.037 -13.851 0.000 -0.511 -0.511
##
## Variances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## .M1T1 0.286 0.022 13.061 0.000 0.286 0.299
## .M2T1 0.535 0.036 15.031 0.000 0.535 0.531
## .M3T1 0.056 0.017 3.398 0.001 0.056 0.057
## .M4T1 0.359 0.026 13.847 0.000 0.359 0.356
## .M1T2 0.306 0.026 11.947 0.000 0.306 0.315
## .M2T2 0.716 0.047 15.190 0.000 0.716 0.718
## .M3T2 0.165 0.023 7.316 0.000 0.165 0.166
## .M4T2 0.319 0.026 12.093 0.000 0.319 0.326
## T1 1.000 1.000 1.000
## T2 1.000 1.000 1.000
(CTCU.fit <- fitMeasures(CTCU.out))
## npar fmin chisq
## 21.000 0.179 178.869
## df pvalue baseline.chisq
## 15.000 0.000 2701.140
## baseline.df baseline.pvalue cfi
## 28.000 0.000 0.939
## tli nnfi rfi
## 0.886 0.886 0.876
## nfi pnfi ifi
## 0.934 0.500 0.939
## rni logl unrestricted.logl
## 0.939 -4410.615 -4321.180
## aic bic ntotal
## 8863.229 8951.736 500.000
## bic2 rmsea rmsea.ci.lower
## 8885.081 0.148 0.129
## rmsea.ci.upper rmsea.pvalue rmr
## 0.168 0.000 0.076
## rmr_nomean srmr srmr_bentler
## 0.076 0.077 0.077
## srmr_bentler_nomean crmr crmr_nomean
## 0.077 0.084 0.084
## srmr_mplus srmr_mplus_nomean cn_05
## 0.074 0.074 70.872
## cn_01 gfi agfi
## 86.476 0.919 0.805
## pgfi mfi ecvi
## 0.383 0.849 0.442
(CTCU.pars <- inspect(CTCU.out,what="std"))
## $lambda
## T1 T2
## M1T1 0.837 0.000
## M2T1 0.685 0.000
## M3T1 0.971 0.000
## M4T1 0.803 0.000
## M1T2 0.000 0.827
## M2T2 0.000 0.531
## M3T2 0.000 0.913
## M4T2 0.000 0.821
##
## $theta
## M1T1 M2T1 M3T1 M4T1 M1T2 M2T2 M3T2 M4T2
## M1T1 0.299
## M2T1 0.000 0.531
## M3T1 0.000 0.000 0.057
## M4T1 0.000 0.000 0.000 0.356
## M1T2 -0.198 0.000 0.000 0.000 0.315
## M2T2 0.000 -0.047 0.000 0.000 0.000 0.718
## M3T2 0.000 0.000 0.066 0.000 0.000 0.000 0.166
## M4T2 0.000 0.000 0.000 0.197 0.000 0.000 0.000 0.326
##
## $psi
## T1 T2
## T1 1.000
## T2 -0.511 1.000
lavInspect(CTCU.out, "theta")
## M1T1 M2T1 M3T1 M4T1 M1T2 M2T2 M3T2 M4T2
## M1T1 0.286
## M2T1 0.000 0.535
## M3T1 0.000 0.000 0.056
## M4T1 0.000 0.000 0.000 0.359
## M1T2 -0.059 0.000 0.000 0.000 0.306
## M2T2 0.000 -0.029 0.000 0.000 0.000 0.716
## M3T2 0.000 0.000 0.006 0.000 0.000 0.000 0.165
## M4T2 0.000 0.000 0.000 0.067 0.000 0.000 0.000 0.319
CTCU model
modelCU <- ' T1 =~ M1T1 + M2T1 + M3T1 + M4T1
T2 =~ M1T2 + M2T2 + M3T2 + M4T2
#Correlated uniqueness for methods factors
M1T1 ~~ M1T2
M2T1 ~~ M2T2
M3T1 ~~ M3T2
M4T1 ~~ M4T2
'
CTCU.out <- cfa(modelCU, sample.cov = d, sample.nobs = 500, std.lv=TRUE)
summary(CTCU.out, fit.measures=TRUE, standardized=TRUE)
## lavaan 0.6-7 ended normally after 31 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of free parameters 21
##
## Number of observations 500
##
## Model Test User Model:
##
## Test statistic 178.869
## Degrees of freedom 15
## P-value (Chi-square) 0.000
##
## Model Test Baseline Model:
##
## Test statistic 2701.140
## Degrees of freedom 28
## P-value 0.000
##
## User Model versus Baseline Model:
##
## Comparative Fit Index (CFI) 0.939
## Tucker-Lewis Index (TLI) 0.886
##
## Loglikelihood and Information Criteria:
##
## Loglikelihood user model (H0) -4410.615
## Loglikelihood unrestricted model (H1) -4321.180
##
## Akaike (AIC) 8863.229
## Bayesian (BIC) 8951.736
## Sample-size adjusted Bayesian (BIC) 8885.081
##
## Root Mean Square Error of Approximation:
##
## RMSEA 0.148
## 90 Percent confidence interval - lower 0.129
## 90 Percent confidence interval - upper 0.168
## P-value RMSEA <= 0.05 0.000
##
## Standardized Root Mean Square Residual:
##
## SRMR 0.077
##
## 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
## T1 =~
## M1T1 0.820 0.036 22.826 0.000 0.820 0.837
## M2T1 0.687 0.040 17.154 0.000 0.687 0.685
## M3T1 0.968 0.033 28.923 0.000 0.968 0.971
## M4T1 0.806 0.038 21.431 0.000 0.806 0.803
## T2 =~
## M1T2 0.816 0.037 22.042 0.000 0.816 0.827
## M2T2 0.531 0.043 12.294 0.000 0.531 0.531
## M3T2 0.912 0.036 25.455 0.000 0.912 0.913
## M4T2 0.812 0.037 21.762 0.000 0.812 0.821
##
## Covariances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## .M1T1 ~~
## .M1T2 -0.059 0.016 -3.600 0.000 -0.059 -0.198
## .M2T1 ~~
## .M2T2 -0.029 0.029 -1.010 0.312 -0.029 -0.047
## .M3T1 ~~
## .M3T2 0.006 0.012 0.525 0.599 0.006 0.066
## .M4T1 ~~
## .M4T2 0.067 0.018 3.656 0.000 0.067 0.197
## T1 ~~
## T2 -0.511 0.037 -13.851 0.000 -0.511 -0.511
##
## Variances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## .M1T1 0.286 0.022 13.061 0.000 0.286 0.299
## .M2T1 0.535 0.036 15.031 0.000 0.535 0.531
## .M3T1 0.056 0.017 3.398 0.001 0.056 0.057
## .M4T1 0.359 0.026 13.847 0.000 0.359 0.356
## .M1T2 0.306 0.026 11.947 0.000 0.306 0.315
## .M2T2 0.716 0.047 15.190 0.000 0.716 0.718
## .M3T2 0.165 0.023 7.316 0.000 0.165 0.166
## .M4T2 0.319 0.026 12.093 0.000 0.319 0.326
## T1 1.000 1.000 1.000
## T2 1.000 1.000 1.000
(CTCU.fit <- fitMeasures(CTCU.out))
## npar fmin chisq
## 21.000 0.179 178.869
## df pvalue baseline.chisq
## 15.000 0.000 2701.140
## baseline.df baseline.pvalue cfi
## 28.000 0.000 0.939
## tli nnfi rfi
## 0.886 0.886 0.876
## nfi pnfi ifi
## 0.934 0.500 0.939
## rni logl unrestricted.logl
## 0.939 -4410.615 -4321.180
## aic bic ntotal
## 8863.229 8951.736 500.000
## bic2 rmsea rmsea.ci.lower
## 8885.081 0.148 0.129
## rmsea.ci.upper rmsea.pvalue rmr
## 0.168 0.000 0.076
## rmr_nomean srmr srmr_bentler
## 0.076 0.077 0.077
## srmr_bentler_nomean crmr crmr_nomean
## 0.077 0.084 0.084
## srmr_mplus srmr_mplus_nomean cn_05
## 0.074 0.074 70.872
## cn_01 gfi agfi
## 86.476 0.919 0.805
## pgfi mfi ecvi
## 0.383 0.849 0.442
(CTCU.pars <- inspect(CTCU.out,what="std"))
## $lambda
## T1 T2
## M1T1 0.837 0.000
## M2T1 0.685 0.000
## M3T1 0.971 0.000
## M4T1 0.803 0.000
## M1T2 0.000 0.827
## M2T2 0.000 0.531
## M3T2 0.000 0.913
## M4T2 0.000 0.821
##
## $theta
## M1T1 M2T1 M3T1 M4T1 M1T2 M2T2 M3T2 M4T2
## M1T1 0.299
## M2T1 0.000 0.531
## M3T1 0.000 0.000 0.057
## M4T1 0.000 0.000 0.000 0.356
## M1T2 -0.198 0.000 0.000 0.000 0.315
## M2T2 0.000 -0.047 0.000 0.000 0.000 0.718
## M3T2 0.000 0.000 0.066 0.000 0.000 0.000 0.166
## M4T2 0.000 0.000 0.000 0.197 0.000 0.000 0.000 0.326
##
## $psi
## T1 T2
## T1 1.000
## T2 -0.511 1.000
lavInspect(CTCU.out, "theta")
## M1T1 M2T1 M3T1 M4T1 M1T2 M2T2 M3T2 M4T2
## M1T1 0.286
## M2T1 0.000 0.535
## M3T1 0.000 0.000 0.056
## M4T1 0.000 0.000 0.000 0.359
## M1T2 -0.059 0.000 0.000 0.000 0.306
## M2T2 0.000 -0.029 0.000 0.000 0.000 0.716
## M3T2 0.000 0.000 0.006 0.000 0.000 0.000 0.165
## M4T2 0.000 0.000 0.000 0.067 0.000 0.000 0.000 0.319
CTCU model correlated traits
modelCT <- ' T1 =~ M1T1 + M2T1 + M3T1 + M4T1
T2 =~ M1T2 + M2T2 + M3T2 + M4T2
M1 =~ M1T1 + M1T2
M2 =~ M2T1 + M2T2
M3 =~ M3T1 + M3T2
M4 =~ M4T1 + M4T2
# traits and methods uncorrelated with one another
T1~~0*M1
T1~~0*M2
T1~~0*M3
T1~~0*M4
T2~~0*M1
T2~~0*M2
T2~~0*M3
T2~~0*M4
T1~~1*T2
'
T1CM.out <- cfa(modelCT, sample.cov = d, sample.nobs = 500, std.lv=TRUE)
## Warning in lav_model_estimate(lavmodel = lavmodel, lavpartable =
## lavpartable, : lavaan WARNING: the optimizer warns that a solution has NOT
## been found!
## Warning in lav_model_estimate(lavmodel = lavmodel, lavpartable =
## lavpartable, : lavaan WARNING: the optimizer warns that a solution has NOT
## been found!
## Warning in lav_object_post_check(object): lavaan WARNING: some estimated ov
## variances are negative
## Warning in lav_object_post_check(object): lavaan WARNING: covariance matrix of latent variables
## is not positive definite;
## use lavInspect(fit, "cov.lv") to investigate.
summary(T1CM.out, fit.measures=TRUE, standardized=TRUE)
## lavaan 0.6-7 ended normally after 194 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of free parameters 30
##
## Number of observations 500
##
## Model Test User Model:
##
## Test statistic 16.844
## Degrees of freedom 6
## P-value (Chi-square) 0.010
##
## Model Test Baseline Model:
##
## Test statistic 2701.140
## Degrees of freedom 28
## P-value 0.000
##
## User Model versus Baseline Model:
##
## Comparative Fit Index (CFI) 0.996
## Tucker-Lewis Index (TLI) 0.981
##
## Loglikelihood and Information Criteria:
##
## Loglikelihood user model (H0) -4329.602
## Loglikelihood unrestricted model (H1) -4321.180
##
## Akaike (AIC) 8719.204
## Bayesian (BIC) 8845.642
## Sample-size adjusted Bayesian (BIC) 8750.420
##
## Root Mean Square Error of Approximation:
##
## RMSEA 0.060
## 90 Percent confidence interval - lower 0.027
## 90 Percent confidence interval - upper 0.095
## P-value RMSEA <= 0.05 0.268
##
## Standardized Root Mean Square Residual:
##
## SRMR 0.013
##
## 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
## T1 =~
## M1T1 0.573 0.083 6.918 0.000 0.573 0.573
## M2T1 0.391 0.078 4.990 0.000 0.391 0.391
## M3T1 0.523 0.103 5.068 0.000 0.523 0.523
## M4T1 0.404 0.090 4.484 0.000 0.404 0.404
## T2 =~
## M1T2 -0.828 0.039 -21.180 0.000 -0.828 -0.829
## M2T2 -0.519 0.050 -10.481 0.000 -0.519 -0.520
## M3T2 -0.933 0.040 -23.273 0.000 -0.933 -0.934
## M4T2 -0.820 0.038 -21.689 0.000 -0.820 -0.821
## M1 =~
## M1T1 -0.701 0.072 -9.786 0.000 -0.701 -0.702
## M1T2 0.135 0.094 1.435 0.151 0.135 0.135
## M2 =~
## M2T1 -0.501 0.079 -6.328 0.000 -0.501 -0.502
## M2T2 -0.206 0.073 -2.806 0.005 -0.206 -0.206
## M3 =~
## M3T1 -0.653 0.071 -9.188 0.000 -0.653 -0.653
## M3T2 -0.151 0.110 -1.381 0.167 -0.151 -0.151
## M4 =~
## M4T1 -2.035 5.595 -0.364 0.716 -2.035 -2.037
## M4T2 -0.045 0.156 -0.289 0.772 -0.045 -0.045
##
## Covariances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## T1 ~~
## M1 0.000 0.000 0.000
## M2 0.000 0.000 0.000
## M3 0.000 0.000 0.000
## M4 0.000 0.000 0.000
## T2 ~~
## M1 0.000 0.000 0.000
## M2 0.000 0.000 0.000
## M3 0.000 0.000 0.000
## M4 0.000 0.000 0.000
## T1 ~~
## T2 1.000 1.000 1.000
## M1 ~~
## M2 1.210 0.218 5.546 0.000 1.210 1.210
## M3 1.140 0.289 3.941 0.000 1.140 1.140
## M4 0.273 0.708 0.385 0.700 0.273 0.273
## M2 ~~
## M3 1.362 0.322 4.228 0.000 1.362 1.362
## M4 0.386 1.027 0.376 0.707 0.386 0.386
## M3 ~~
## M4 0.432 1.099 0.393 0.694 0.432 0.432
##
## Variances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## .M1T1 0.178 0.096 1.854 0.064 0.178 0.178
## .M2T1 0.594 0.083 7.150 0.000 0.594 0.595
## .M3T1 0.299 0.174 1.714 0.087 0.299 0.299
## .M4T1 -3.305 22.710 -0.146 0.884 -3.305 -3.312
## .M1T2 0.294 0.023 12.685 0.000 0.294 0.295
## .M2T2 0.686 0.047 14.649 0.000 0.686 0.687
## .M3T2 0.104 0.025 4.194 0.000 0.104 0.104
## .M4T2 0.324 0.026 12.218 0.000 0.324 0.324
## T1 1.000 1.000 1.000
## T2 1.000 1.000 1.000
## M1 1.000 1.000 1.000
## M2 1.000 1.000 1.000
## M3 1.000 1.000 1.000
## M4 1.000 1.000 1.000
(T1CM.fit <- fitMeasures(T1CM.out))
## npar fmin chisq
## 30.000 0.017 16.844
## df pvalue baseline.chisq
## 6.000 0.010 2701.140
## baseline.df baseline.pvalue cfi
## 28.000 0.000 0.996
## tli nnfi rfi
## 0.981 0.981 0.971
## nfi pnfi ifi
## 0.994 0.213 0.996
## rni logl unrestricted.logl
## 0.996 -4329.602 -4321.180
## aic bic ntotal
## 8719.204 8845.642 500.000
## bic2 rmsea rmsea.ci.lower
## 8750.420 0.060 0.027
## rmsea.ci.upper rmsea.pvalue rmr
## 0.095 0.268 0.013
## rmr_nomean srmr srmr_bentler
## 0.013 0.013 0.013
## srmr_bentler_nomean crmr crmr_nomean
## 0.013 0.015 0.015
## srmr_mplus srmr_mplus_nomean cn_05
## 0.013 0.013 374.772
## cn_01 gfi agfi
## 500.049 0.992 0.950
## pgfi mfi ecvi
## 0.165 0.989 0.154
(T1CM.pars <- inspect(T1CM.out,what="std"))
## $lambda
## T1 T2 M1 M2 M3 M4
## M1T1 0.573 0.000 -0.702 0.000 0.000 0.000
## M2T1 0.391 0.000 0.000 -0.502 0.000 0.000
## M3T1 0.523 0.000 0.000 0.000 -0.653 0.000
## M4T1 0.404 0.000 0.000 0.000 0.000 -2.037
## M1T2 0.000 -0.829 0.135 0.000 0.000 0.000
## M2T2 0.000 -0.520 0.000 -0.206 0.000 0.000
## M3T2 0.000 -0.934 0.000 0.000 -0.151 0.000
## M4T2 0.000 -0.821 0.000 0.000 0.000 -0.045
##
## $theta
## M1T1 M2T1 M3T1 M4T1 M1T2 M2T2 M3T2 M4T2
## M1T1 0.178
## M2T1 0.000 0.595
## M3T1 0.000 0.000 0.299
## M4T1 0.000 0.000 0.000 -3.312
## M1T2 0.000 0.000 0.000 0.000 0.295
## M2T2 0.000 0.000 0.000 0.000 0.000 0.687
## M3T2 0.000 0.000 0.000 0.000 0.000 0.000 0.104
## M4T2 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.324
##
## $psi
## T1 T2 M1 M2 M3 M4
## T1 1.000
## T2 1.000 1.000
## M1 0.000 0.000 1.000
## M2 0.000 0.000 1.210 1.000
## M3 0.000 0.000 1.140 1.362 1.000
## M4 0.000 0.000 0.273 0.386 0.432 1.000
inspect(T1CM.out,what="std")$lambda
## T1 T2 M1 M2 M3 M4
## M1T1 0.573 0.000 -0.702 0.000 0.000 0.000
## M2T1 0.391 0.000 0.000 -0.502 0.000 0.000
## M3T1 0.523 0.000 0.000 0.000 -0.653 0.000
## M4T1 0.404 0.000 0.000 0.000 0.000 -2.037
## M1T2 0.000 -0.829 0.135 0.000 0.000 0.000
## M2T2 0.000 -0.520 0.000 -0.206 0.000 0.000
## M3T2 0.000 -0.934 0.000 0.000 -0.151 0.000
## M4T2 0.000 -0.821 0.000 0.000 0.000 -0.045
Likelihood ratio test
lrtest(CTCU.out, T1CM.out)
## Likelihood ratio test
##
## Model 1: CTCU.out
## Model 2: T1CM.out
## #Df LogLik Df Chisq Pr(>Chisq)
## 1 21 -4410.6
## 2 30 -4329.6 9 162.03 < 2.2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1