library(“psych”) ####EFA 실행을 위해 library(“GPArotation”) ####oblimin 회전을 위해 fa(data file, nfactors=1,n.obs = NA, n.iter=1, rotate=“oblimin”, scores=“regression”, residuals=FALSE, SMC=TRUE, covar=FALSE, missing=FALSE, impute=“median”, min.err = 0.001, max.iter = 50, symmetric=TRUE, warnings=TRUE, fm=“ML”, alpha=.1, p=.05, oblique.scores=FALSE, np.obs=NULL, use=“pairwise”, cor=“cor”, correct=.5, weight=NULL)
요인선택방법 : eigenvalue 기반
O1 ~ O4, 항목 4개를 Factor 1 주성분이 설명하는 량이 73.3%임.
Scree test : eigenvalue가 세로축(Y축), 요인 수가 가로축(X축), 기울기가 급격하게 변하는 부분, 또는 eigenvalue가 1 이상인 것을 요인 수로 선택.
단점 : 모호한 결과를 얻을 수 있고, 주관적 해석이 가능함
Parallel analysis : Scree plot을 겹쳐서 비교하는 방법. 무선 추출한 dataset에서 추정한 eigenvalue의 scree plot과 실제자료에서 추정한 eigenvalue의 scree plot을 겹쳐서 무선 추출한 eigenvalue의 값 보다는 위의 값을 요인 수로 결정하는 것. -> Factor라면 무선자료로 얻어진 자료가 설명하는 분산보다는 더 많은 분산을 설명해야 함.
A
사교회전결과는 패턴행렬과 구조행렬로 나타남. 패턴행렬을 해석하고 보고함.
패턴행렬이 주로 해석되고 보고됨.
F
H
I
G
- Goodness of fit Indices 요약
- SRMR = 0에 근사할수록 더 좋은 적합도를 의미함.
- RMSEA = 0.05에 근사하거나 0.05이하, 0에 가까울수록 더 좋은 적합도를 의미함.
- CFI, TLI = 0.95근사 또는 이상. 1에 가까울 수록 좋음.
J
library(xlsx)
correlation<-read.xlsx("cor.xlsx", header = F, sheetName = 1)
print(correlation)
## X1 X2 X3 X4 X5 X6 X7 X8
## 1 1.000 NA NA NA NA NA NA NA
## 2 0.767 1.000 NA NA NA NA NA NA
## 3 0.731 0.709 1.000 NA NA NA NA NA
## 4 0.778 0.738 0.762 1.000 NA NA NA NA
## 5 -0.351 -0.302 -0.356 -0.318 1.000 NA NA NA
## 6 -0.316 -0.280 -0.300 -0.267 0.675 1.000 NA NA
## 7 -0.296 -0.289 -0.297 -0.296 0.634 0.651 1.000 NA
## 8 -0.282 -0.254 -0.292 -0.245 0.534 0.593 0.566 1
library(MplusAutomation)
## Version: 0.7-2
## We work hard to write this free software. Please help us get credit by citing:
##
## Hallquist, M. N. & Wiley, J. F. (2018). MplusAutomation: An R Package for Facilitating Large-Scale Latent Variable Analyses in Mplus. Structural Equation Modeling, 1-18. doi: 10.1080/10705511.2017.1402334.
##
## -- see citation("MplusAutomation").
A<-readModels(target = "c:/Users/LG/Documents/Factor Analysis/tab4.1.out", recursive = T)
## Reading model: c:/Users/LG/Documents/Factor Analysis/tab4.1.out
print(A$summaries)
## Mplus.version Title
## 1 7 TWO FACTOR MODEL OF NEUROTICISM AND EXTRAVERSION
## AnalysisType DataType Estimator Observations NGroups
## 1 GENERAL STDEVIATIONS CORRELATION ML 250 1
## NDependentVars NIndependentVars NContinuousLatentVars Parameters
## 1 8 0 2 17
## ChiSqM_Value ChiSqM_DF ChiSqM_PValue ChiSqBaseline_Value
## 1 13.285 19 0.8237 1253.791
## ChiSqBaseline_DF ChiSqBaseline_PValue LL UnrestrictedLL CFI TLI
## 1 28 0 -5748.501 -5741.858 1 1.007
## AIC BIC aBIC RMSEA_Estimate RMSEA_90CI_LB RMSEA_90CI_UB
## 1 11531 11590.87 11536.98 0 0 0.034
## RMSEA_pLT05 SRMR AICC Filename
## 1 0.99 0.019 11533.64 tab4.1.out
print(A$parameters)
## $unstandardized
## paramHeader param est se est_se pval
## 1 NEUROT.BY N1 1.000 0.000 999.000 999
## 2 NEUROT.BY N2 0.942 0.052 17.981 0
## 3 NEUROT.BY N3 1.071 0.060 17.791 0
## 4 NEUROT.BY N4 0.997 0.052 19.312 0
## 5 EXTRAV.BY E1 1.000 0.000 999.000 999
## 6 EXTRAV.BY E2 1.074 0.079 13.636 0
## 7 EXTRAV.BY E3 0.935 0.072 12.927 0
## 8 EXTRAV.BY E4 0.814 0.072 11.247 0
## 9 EXTRAV.WITH NEUROT -10.512 1.920 -5.476 0
## 10 Variances NEUROT 25.335 2.900 8.736 0
## 11 Variances EXTRAV 23.054 3.188 7.232 0
## 12 Residual.Variances N1 7.025 0.907 7.746 0
## 13 Residual.Variances N2 8.747 0.999 8.755 0
## 14 Residual.Variances N3 11.760 1.328 8.855 0
## 15 Residual.Variances N4 7.188 0.916 7.846 0
## 16 Residual.Variances E1 12.802 1.581 8.100 0
## 17 Residual.Variances E2 11.671 1.602 7.285 0
## 18 Residual.Variances E3 12.192 1.458 8.361 0
## 19 Residual.Variances E4 15.972 1.666 9.587 0
##
## $r2
## param est se est_se pval
## 1 N1 0.783 0.032 24.774 0
## 2 N2 0.720 0.036 19.976 0
## 3 N3 0.712 0.037 19.434 0
## 4 N4 0.778 0.032 24.345 0
## 5 E1 0.643 0.047 13.602 0
## 6 E2 0.695 0.045 15.386 0
## 7 E3 0.623 0.048 12.966 0
## 8 E4 0.489 0.053 9.239 0
##
## $stdyx.standardized
## paramHeader param est se est_se pval
## 1 NEUROT.BY N1 0.885 0.018 49.547 0
## 2 NEUROT.BY N2 0.849 0.021 39.952 0
## 3 NEUROT.BY N3 0.844 0.022 38.868 0
## 4 NEUROT.BY N4 0.882 0.018 48.691 0
## 5 EXTRAV.BY E1 0.802 0.029 27.203 0
## 6 EXTRAV.BY E2 0.834 0.027 30.772 0
## 7 EXTRAV.BY E3 0.789 0.030 25.931 0
## 8 EXTRAV.BY E4 0.699 0.038 18.478 0
## 9 EXTRAV.WITH NEUROT -0.435 0.059 -7.410 0
## 10 Variances NEUROT 1.000 0.000 999.000 999
## 11 Variances EXTRAV 1.000 0.000 999.000 999
## 12 Residual.Variances N1 0.217 0.032 6.869 0
## 13 Residual.Variances N2 0.280 0.036 7.770 0
## 14 Residual.Variances N3 0.288 0.037 7.871 0
## 15 Residual.Variances N4 0.222 0.032 6.952 0
## 16 Residual.Variances E1 0.357 0.047 7.553 0
## 17 Residual.Variances E2 0.305 0.045 6.747 0
## 18 Residual.Variances E3 0.377 0.048 7.838 0
## 19 Residual.Variances E4 0.511 0.053 9.668 0
##
## $stdy.standardized
## paramHeader param est se est_se pval
## 1 NEUROT.BY N1 0.885 0.018 49.547 0
## 2 NEUROT.BY N2 0.849 0.021 39.952 0
## 3 NEUROT.BY N3 0.844 0.022 38.868 0
## 4 NEUROT.BY N4 0.882 0.018 48.691 0
## 5 EXTRAV.BY E1 0.802 0.029 27.203 0
## 6 EXTRAV.BY E2 0.834 0.027 30.772 0
## 7 EXTRAV.BY E3 0.789 0.030 25.931 0
## 8 EXTRAV.BY E4 0.699 0.038 18.478 0
## 9 EXTRAV.WITH NEUROT -0.435 0.059 -7.410 0
## 10 Variances NEUROT 1.000 0.000 999.000 999
## 11 Variances EXTRAV 1.000 0.000 999.000 999
## 12 Residual.Variances N1 0.217 0.032 6.869 0
## 13 Residual.Variances N2 0.280 0.036 7.770 0
## 14 Residual.Variances N3 0.288 0.037 7.871 0
## 15 Residual.Variances N4 0.222 0.032 6.952 0
## 16 Residual.Variances E1 0.357 0.047 7.553 0
## 17 Residual.Variances E2 0.305 0.045 6.747 0
## 18 Residual.Variances E3 0.377 0.048 7.838 0
## 19 Residual.Variances E4 0.511 0.053 9.668 0
##
## $std.standardized
## paramHeader param est se est_se pval
## 1 NEUROT.BY N1 5.033 0.288 17.472 0
## 2 NEUROT.BY N2 4.742 0.290 16.337 0
## 3 NEUROT.BY N3 5.389 0.333 16.190 0
## 4 NEUROT.BY N4 5.017 0.289 17.381 0
## 5 EXTRAV.BY E1 4.801 0.332 14.465 0
## 6 EXTRAV.BY E2 5.159 0.337 15.294 0
## 7 EXTRAV.BY E3 4.491 0.317 14.150 0
## 8 EXTRAV.BY E4 3.907 0.326 11.974 0
## 9 EXTRAV.WITH NEUROT -0.435 0.059 -7.410 0
## 10 Variances NEUROT 1.000 0.000 999.000 999
## 11 Variances EXTRAV 1.000 0.000 999.000 999
## 12 Residual.Variances N1 7.025 0.907 7.746 0
## 13 Residual.Variances N2 8.747 0.999 8.755 0
## 14 Residual.Variances N3 11.760 1.328 8.855 0
## 15 Residual.Variances N4 7.188 0.916 7.846 0
## 16 Residual.Variances E1 12.802 1.581 8.100 0
## 17 Residual.Variances E2 11.671 1.602 7.285 0
## 18 Residual.Variances E3 12.192 1.458 8.361 0
## 19 Residual.Variances E4 15.972 1.666 9.587 0
print(A$residuals)
## $covarianceEst
## N1 N2 N3 N4 E1 E2 E3 E4
## N1 32.360 NA NA NA NA NA NA NA
## N2 23.869 31.234 NA NA NA NA NA NA
## N3 27.122 25.553 40.796 NA NA NA NA NA
## N4 25.253 23.792 27.035 32.360 NA NA NA NA
## E1 -10.512 -9.904 -11.254 -10.478 35.856 NA NA NA
## E2 -11.295 -10.641 -12.092 -11.258 24.771 38.286 NA NA
## E3 -9.832 -9.263 -10.526 -9.800 21.563 23.168 32.360 NA
## E4 -8.553 -8.058 -9.157 -8.526 18.758 20.155 17.545 31.235
##
## $covarianceResid
## N1 N2 N3 N4 E1 E2 E3 E4
## N1 0.000 NA NA NA NA NA NA NA
## N2 0.516 0.000 NA NA NA NA NA NA
## N3 -0.562 -0.244 0.000 NA NA NA NA NA
## N4 -0.077 -0.329 0.651 0.000 NA NA NA NA
## E1 -1.444 -0.203 -2.362 -0.354 0.000 NA NA NA
## E2 0.172 0.958 0.235 1.860 0.239 0.000 NA NA
## E3 0.253 0.075 -0.266 0.222 0.033 -0.254 0.00 NA
## E4 -0.412 0.125 -1.267 0.737 -0.888 0.352 0.45 0
##
## $covarianceResid.std
## N1 N2 N3 N4 E1 E2 E3 E4
## N1 0.012 NA NA NA NA NA NA NA
## N2 1.209 0.011 NA NA NA NA NA NA
## N3 999.000 -0.648 0.009 NA NA NA NA NA
## N4 -0.421 -2.107 1.269 0.012 NA NA NA NA
## E1 -1.169 -0.162 -1.558 -0.294 0.006 NA NA NA
## E2 0.153 0.813 0.169 1.737 0.562 0.006 NA NA
## E3 0.221 0.062 -0.189 0.192 0.074 -0.834 0.004 NA
## E4 -0.311 0.093 -0.801 0.566 -1.717 0.588 0.659 0
##
## $covarianceResid.norm
## N1 N2 N3 N4 E1 E2 E3 E4
## N1 0.000 NA NA NA NA NA NA NA
## N2 0.204 0.000 NA NA NA NA NA NA
## N3 -0.198 -0.088 0.000 NA NA NA NA NA
## N4 -0.030 -0.132 0.225 0.000 NA NA NA NA
## E1 -0.633 -0.092 -0.920 -0.157 0.000 NA NA NA
## E2 0.074 0.422 0.090 0.807 0.085 0.000 NA NA
## E3 0.119 0.036 -0.111 0.104 0.013 -0.096 0.000 NA
## E4 -0.197 0.061 -0.539 0.356 -0.370 0.138 0.195 0
##
## attr(,"class")
## [1] "list" "mplus.residuals"
unstandardized
해석가능성
-> 적합한 진단정보(fit diagnostic information), 실질적 타당성(substantive justification)을 기반으로 적합도를 높이기 위해서 데이터를 수정하고 다시 적용함.
재적합(respecification)은 CFA모델의 간명성과 해석가능성을 높이기 위해서 사용하지만 goodness of fit은 감소될 수 있음.
ex) 상관이 높은 2개의 factor를 하나의 factor로 놓고 다시 재적합하면, 간명하고 해석가능성은 높아지지만, 초기에 복잡한 모형보다 goodness of fit이 감소됨. (상관이 높은 2개의 factor는 변별력이 없는 2개의 factor임.)
간명성을 향상시키기위해 사용하는 model respecification의 2가지 type : multiple-groups solutions, higher-oder factor models임. -> 초기 CFA가 데이터에 잘 맞는다는 것이 확인된 후에 실행됨.
multiple-groups solutions : parameter에 동일성 제약 조건(factor loading)을 적용하여, 집단간 비교를 가능하게 함. -> parameter가 모든 그룹에서 자유롭게 추정되는 baseline solution 보다 적합도가 좋지 않음. ex) 남*여에 따른 외향성, 신경성의 요인구조가 어떤지 비교하는 것.
higher-oder factor models : 요인간 상관관계를 보다 간결하게 고차원 구조로 재현함. -> higher-oder factor models의 parameter수는 최초 CFA모델에서 자유롭게 추정한 parameter수보다 적기 때문에 적합도를 향상시키지 못함.
higher
Table5.1
nested
Figure5.1
table5.3
overparameterized model일 때, improper solution이 나타남.
starting value가 좋지 않으면 improper solution의 원인이 될 수 있음. -> 최근에 프로그램이 향상되면서 starting value 때문에 생기는 improper solution은 거의 없음.
figure5.2
E/CFA
table5.8
table5.9
model
Figure5.3
Figure5.4
table6.1
주황 네모는 다른 방법을 사용한 블록 -> heteromethod, 다른 방법에 의해 평가된 indicator들 간의 상관관계.
table6.1은 수렴타당도, 변별타당도가 높고 방법효과가 미미하다는 결과가 나타남. -> 높은 구성타당도를 가짐.
method을 위해 상관행렬을 추정함. -> 방법의 유사성을 평가하기 위해서 상관행렬이 검사될 수 있음.
CT-C(m-1)의 단점은 모형의 비대칭성임.
- 선행연구, 이론적 배경으로 지지되는 모형의 형태
- EFA를 시행 후, cross loading 항목이 생기면, 과연 어떤 모형이 적합하고 타당한지 확인이 필요함.
- cross loading 항목이 생기고 cross loading값이 다른 요인에 걸리는 것이 더 크다면, 가설에 의한 모형(cv1)과 EFA를 시행후 cross loading을 확인한 모형(cv2), 요인부하량을 보고 indicator의 위치를 조정한 모형(cv3)을 모두비교해서 가장 최적의 모형을 찾아야함.
library(MplusAutomation) A<-readModels(target = “c:/Users/LG/Documents/Factor Analysis/tab4.1.out”, recursive = T) print(A)
ANALYSIS : processors = 8; #####core 갯수지정, 처리하는 창 갯수.##### starts = 300 30; #####300개 중에서 30개가 수렴하면 거기서 시작.#####
mplus model
mplus model code