# Load libraries (you may have to install packages first)
library(psych)
library(lavaan)
## This is lavaan 0.6-15
## lavaan is FREE software! Please report any bugs.
##
## Attaching package: 'lavaan'
## The following object is masked from 'package:psych':
##
## cor2cov
library(semTools)
##
## ###############################################################################
## This is semTools 0.5-6
## All users of R (or SEM) are invited to submit functions or ideas for functions.
## ###############################################################################
##
## Attaching package: 'semTools'
## The following objects are masked from 'package:psych':
##
## reliability, skew
library(semPlot)
# Load data
data(bfi)
# Truncate to items only
bfiT <- bfi[grep("A1$", colnames(bfi)):grep("O5$", colnames(bfi))]
# Write model syntax (aka define latent variables)
#BFI - BIG FIVE INVENTORY
CFA_BFI <-
'A = ~ A1 + A2 + A3 + A4 + A5
C = ~ C1 + C2 + C3 + C4 + C5
E = ~ E1 + E2 + E3 + E4 + E5
N = ~ N1 + N2 + N3 + N4 + N5
O = ~ O1 + O2 + O3 + O4 + O5'
# Fitting Model, Plotting
CFA_BFIfit <- cfa(CFA_BFI, data = bfiT)
summary(CFA_BFIfit, standard = TRUE, fit.measures = TRUE)
## lavaan 0.6.15 ended normally after 55 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 60
##
## Used Total
## Number of observations 2436 2800
##
## Model Test User Model:
##
## Test statistic 4165.467
## Degrees of freedom 265
## P-value (Chi-square) 0.000
##
## Model Test Baseline Model:
##
## Test statistic 18222.116
## Degrees of freedom 300
## P-value 0.000
##
## User Model versus Baseline Model:
##
## Comparative Fit Index (CFI) 0.782
## Tucker-Lewis Index (TLI) 0.754
##
## Loglikelihood and Information Criteria:
##
## Loglikelihood user model (H0) -99840.238
## Loglikelihood unrestricted model (H1) -97757.504
##
## Akaike (AIC) 199800.476
## Bayesian (BIC) 200148.363
## Sample-size adjusted Bayesian (SABIC) 199957.729
##
## Root Mean Square Error of Approximation:
##
## RMSEA 0.078
## 90 Percent confidence interval - lower 0.076
## 90 Percent confidence interval - upper 0.080
## P-value H_0: RMSEA <= 0.050 0.000
## P-value H_0: RMSEA >= 0.080 0.037
##
## Standardized Root Mean Square Residual:
##
## SRMR 0.075
##
## 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
## A =~
## A1 1.000 0.484 0.344
## A2 -1.579 0.108 -14.650 0.000 -0.764 -0.648
## A3 -2.030 0.134 -15.093 0.000 -0.983 -0.749
## A4 -1.564 0.115 -13.616 0.000 -0.757 -0.510
## A5 -1.804 0.121 -14.852 0.000 -0.873 -0.687
## C =~
## C1 1.000 0.680 0.551
## C2 1.148 0.057 20.152 0.000 0.781 0.592
## C3 1.036 0.054 19.172 0.000 0.705 0.546
## C4 -1.421 0.065 -21.924 0.000 -0.967 -0.702
## C5 -1.489 0.072 -20.694 0.000 -1.012 -0.620
## E =~
## E1 1.000 0.920 0.564
## E2 1.226 0.051 23.899 0.000 1.128 0.699
## E3 -0.921 0.041 -22.431 0.000 -0.847 -0.627
## E4 -1.121 0.047 -23.977 0.000 -1.031 -0.703
## E5 -0.808 0.039 -20.648 0.000 -0.743 -0.553
## N =~
## N1 1.000 1.300 0.825
## N2 0.947 0.024 39.899 0.000 1.230 0.803
## N3 0.884 0.025 35.919 0.000 1.149 0.721
## N4 0.692 0.025 27.753 0.000 0.899 0.573
## N5 0.628 0.026 24.027 0.000 0.816 0.503
## O =~
## O1 1.000 0.635 0.564
## O2 -1.020 0.068 -14.962 0.000 -0.648 -0.418
## O3 1.373 0.072 18.942 0.000 0.872 0.724
## O4 0.437 0.048 9.160 0.000 0.277 0.233
## O5 -0.960 0.060 -16.056 0.000 -0.610 -0.461
##
## Covariances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## A ~~
## C -0.110 0.012 -9.254 0.000 -0.334 -0.334
## E 0.304 0.025 12.293 0.000 0.683 0.683
## N 0.141 0.018 7.712 0.000 0.223 0.223
## O -0.093 0.011 -8.446 0.000 -0.303 -0.303
## C ~~
## E -0.224 0.020 -11.121 0.000 -0.357 -0.357
## N -0.250 0.025 -10.117 0.000 -0.283 -0.283
## O 0.130 0.014 9.190 0.000 0.301 0.301
## E ~~
## N 0.292 0.032 9.131 0.000 0.244 0.244
## O -0.265 0.021 -12.347 0.000 -0.453 -0.453
## N ~~
## O -0.093 0.022 -4.138 0.000 -0.112 -0.112
##
## Variances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## .A1 1.745 0.052 33.725 0.000 1.745 0.882
## .A2 0.807 0.028 28.396 0.000 0.807 0.580
## .A3 0.754 0.032 23.339 0.000 0.754 0.438
## .A4 1.632 0.051 31.796 0.000 1.632 0.740
## .A5 0.852 0.032 26.800 0.000 0.852 0.528
## .C1 1.063 0.035 30.073 0.000 1.063 0.697
## .C2 1.130 0.039 28.890 0.000 1.130 0.650
## .C3 1.170 0.039 30.194 0.000 1.170 0.702
## .C4 0.960 0.040 24.016 0.000 0.960 0.507
## .C5 1.640 0.059 27.907 0.000 1.640 0.615
## .E1 1.814 0.058 31.047 0.000 1.814 0.682
## .E2 1.332 0.049 26.928 0.000 1.332 0.512
## .E3 1.108 0.038 29.522 0.000 1.108 0.607
## .E4 1.088 0.041 26.732 0.000 1.088 0.506
## .E5 1.251 0.040 31.258 0.000 1.251 0.694
## .N1 0.793 0.037 21.575 0.000 0.793 0.320
## .N2 0.836 0.036 23.458 0.000 0.836 0.356
## .N3 1.222 0.043 28.271 0.000 1.222 0.481
## .N4 1.654 0.052 31.977 0.000 1.654 0.672
## .N5 1.969 0.060 32.889 0.000 1.969 0.747
## .O1 0.865 0.032 27.216 0.000 0.865 0.682
## .O2 1.990 0.063 31.618 0.000 1.990 0.826
## .O3 0.691 0.039 17.717 0.000 0.691 0.476
## .O4 1.346 0.040 34.036 0.000 1.346 0.946
## .O5 1.380 0.045 30.662 0.000 1.380 0.788
## A 0.234 0.030 7.839 0.000 1.000 1.000
## C 0.463 0.036 12.810 0.000 1.000 1.000
## E 0.846 0.062 13.693 0.000 1.000 1.000
## N 1.689 0.073 23.034 0.000 1.000 1.000
## O 0.404 0.033 12.156 0.000 1.000 1.000
semPaths(CFA_BFIfit)
#gives you the correlations and residuls - squaring the factor pattern only shows you the direct relationship
inspect(cfa(CFA_BFIfit, bfiT), what ="std")
## $lambda
## A C E N O
## A1 0.344 0.000 0.000 0.000 0.000
## A2 -0.648 0.000 0.000 0.000 0.000
## A3 -0.749 0.000 0.000 0.000 0.000
## A4 -0.510 0.000 0.000 0.000 0.000
## A5 -0.687 0.000 0.000 0.000 0.000
## C1 0.000 0.551 0.000 0.000 0.000
## C2 0.000 0.592 0.000 0.000 0.000
## C3 0.000 0.546 0.000 0.000 0.000
## C4 0.000 -0.702 0.000 0.000 0.000
## C5 0.000 -0.620 0.000 0.000 0.000
## E1 0.000 0.000 0.564 0.000 0.000
## E2 0.000 0.000 0.699 0.000 0.000
## E3 0.000 0.000 -0.627 0.000 0.000
## E4 0.000 0.000 -0.703 0.000 0.000
## E5 0.000 0.000 -0.553 0.000 0.000
## N1 0.000 0.000 0.000 0.825 0.000
## N2 0.000 0.000 0.000 0.803 0.000
## N3 0.000 0.000 0.000 0.721 0.000
## N4 0.000 0.000 0.000 0.573 0.000
## N5 0.000 0.000 0.000 0.503 0.000
## O1 0.000 0.000 0.000 0.000 0.564
## O2 0.000 0.000 0.000 0.000 -0.418
## O3 0.000 0.000 0.000 0.000 0.724
## O4 0.000 0.000 0.000 0.000 0.233
## O5 0.000 0.000 0.000 0.000 -0.461
##
## $theta
## A1 A2 A3 A4 A5 C1 C2 C3 C4 C5 E1 E2
## A1 0.882
## A2 0.000 0.580
## A3 0.000 0.000 0.438
## A4 0.000 0.000 0.000 0.740
## A5 0.000 0.000 0.000 0.000 0.528
## C1 0.000 0.000 0.000 0.000 0.000 0.697
## C2 0.000 0.000 0.000 0.000 0.000 0.000 0.650
## C3 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.702
## C4 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.507
## C5 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.615
## E1 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.682
## E2 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.512
## E3 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
## E4 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
## E5 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
## N1 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
## N2 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
## N3 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
## N4 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
## N5 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
## O1 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
## O2 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
## O3 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
## O4 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
## O5 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
## E3 E4 E5 N1 N2 N3 N4 N5 O1 O2 O3 O4
## A1
## A2
## A3
## A4
## A5
## C1
## C2
## C3
## C4
## C5
## E1
## E2
## E3 0.607
## E4 0.000 0.506
## E5 0.000 0.000 0.694
## N1 0.000 0.000 0.000 0.320
## N2 0.000 0.000 0.000 0.000 0.356
## N3 0.000 0.000 0.000 0.000 0.000 0.481
## N4 0.000 0.000 0.000 0.000 0.000 0.000 0.672
## N5 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.747
## O1 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.682
## O2 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.826
## O3 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.476
## O4 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.946
## O5 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
## O5
## A1
## A2
## A3
## A4
## A5
## C1
## C2
## C3
## C4
## C5
## E1
## E2
## E3
## E4
## E5
## N1
## N2
## N3
## N4
## N5
## O1
## O2
## O3
## O4
## O5 0.788
##
## $psi
## A C E N O
## A 1.000
## C -0.334 1.000
## E 0.683 -0.357 1.000
## N 0.223 -0.283 0.244 1.000
## O -0.303 0.301 -0.453 -0.112 1.000
#factor correlations