In this project, I will conduct a measurement model and a structural model to investigate the relationship between executive function components and the two types of category learning. The data of this project was inherited from previous lab member’s dissertation work.

Data preprocessing

library(dplyr)
library(lavaan)
library(semPlot)
library(data.table)
#to get path to folder, cmd+opt+c
setwd('/Users/tzhu9/Documents/OneDrive - The University of Western Ontario/Grad School Course Work/9555/Assignment/Project')

data<-read.csv('sarahdata.csv')
data<-select(data, 
             "Subj", 
             "Antisaccade", 
             #"Stroop", 
             "StroopPerf", 
             "SSRTavg", 
             "LetMem", 
             "KeepTrack", 
             "SpatialBack", 
             "NumLett", 
             #"NumLetPerf", 
             "ColShape", 
             #"ColShapePerf", 
             "CatSwitch", 
             #"CatSwitchPerf", 
             "FR1", "FR2", "FR3", "FR4", 
             "SD1", "SD2", "SD3", "SD4")
head(data)
#think about how to simulate 3 columns based on previous trajectory
#convert Subj variable from numeric to factor
data$Subj<-as.factor(data$Subj)
#Standardize all columns in the data, except for Subj
data[,-c(1)]<-scale(data[,-c(1)])
head(data)

Confirmatory Factor Analysis

Three factor CFA based on Miyake et al., (2000)

cfa3f<-'
Inhibit=~StroopPerf+SSRTavg+Antisaccade 
Update=~KeepTrack+SpatialBack+LetMem
Shift=~ NumLett+ColShape+CatSwitch
'

Three factor model fit

Previous analysis used listwise deletion to handle missing data, which led to a loss of 70 Subj (i.e., more than 1/3 of total Subj). The current analysis adopted Miximum Likelihood estimation.

cfa3f_fit <- cfa(cfa3f, data, std.lv=TRUE, missing='ml')
summary(cfa3f_fit, fit.measures=T, standardized=T, rsquare=T)
## lavaan 0.6-3 ended normally after 29 iterations
## 
##   Optimization method                           NLMINB
##   Number of free parameters                         30
## 
##   Number of observations                           176
##   Number of missing patterns                        19
## 
##   Estimator                                         ML
##   Model Fit Test Statistic                      23.986
##   Degrees of freedom                                24
##   P-value (Chi-square)                           0.462
## 
## Model test baseline model:
## 
##   Minimum Function Test Statistic              189.969
##   Degrees of freedom                                36
##   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)              -2016.781
##   Loglikelihood unrestricted model (H1)      -2004.788
## 
##   Number of free parameters                         30
##   Akaike (AIC)                                4093.561
##   Bayesian (BIC)                              4188.676
##   Sample-size adjusted Bayesian (BIC)         4093.673
## 
## Root Mean Square Error of Approximation:
## 
##   RMSEA                                          0.000
##   90 Percent Confidence Interval          0.000  0.061
##   P-value RMSEA <= 0.05                          0.876
## 
## Standardized Root Mean Square Residual:
## 
##   SRMR                                           0.047
## 
## Parameter Estimates:
## 
##   Information                                 Observed
##   Observed information based on                Hessian
##   Standard Errors                             Standard
## 
## Latent Variables:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   Inhibit =~                                                            
##     StroopPerf        0.164    0.100    1.647    0.100    0.164    0.165
##     SSRTavg           0.152    0.110    1.381    0.167    0.152    0.153
##     Antisaccade       0.711    0.225    3.156    0.002    0.711    0.713
##   Update =~                                                             
##     KeepTrack         0.420    0.106    3.977    0.000    0.420    0.421
##     SpatialBack       0.515    0.121    4.272    0.000    0.515    0.510
##     LetMem            0.221    0.102    2.161    0.031    0.221    0.221
##   Shift =~                                                              
##     NumLett           0.766    0.082    9.288    0.000    0.766    0.767
##     ColShape          0.710    0.081    8.753    0.000    0.710    0.713
##     CatSwitch         0.519    0.083    6.260    0.000    0.519    0.520
## 
## Covariances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   Inhibit ~~                                                            
##     Update            0.922    0.309    2.981    0.003    0.922    0.922
##     Shift             0.576    0.196    2.935    0.003    0.576    0.576
##   Update ~~                                                             
##     Shift             0.672    0.150    4.474    0.000    0.672    0.672
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .StroopPerf        0.000    0.075    0.000    1.000    0.000    0.000
##    .SSRTavg          -0.007    0.084   -0.089    0.929   -0.007   -0.007
##    .Antisaccade      -0.024    0.078   -0.311    0.755   -0.024   -0.024
##    .KeepTrack        -0.009    0.077   -0.116    0.908   -0.009   -0.009
##    .SpatialBack      -0.048    0.084   -0.573    0.566   -0.048   -0.048
##    .LetMem           -0.000    0.075   -0.006    0.995   -0.000   -0.000
##    .NumLett          -0.015    0.076   -0.199    0.842   -0.015   -0.015
##    .ColShape         -0.000    0.075   -0.001    0.999   -0.000   -0.000
##    .CatSwitch        -0.004    0.076   -0.050    0.961   -0.004   -0.004
##     Inhibit           0.000                               0.000    0.000
##     Update            0.000                               0.000    0.000
##     Shift             0.000                               0.000    0.000
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .StroopPerf        0.967    0.105    9.179    0.000    0.967    0.973
##    .SSRTavg           0.969    0.118    8.237    0.000    0.969    0.977
##    .Antisaccade       0.489    0.309    1.582    0.114    0.489    0.492
##    .KeepTrack         0.819    0.109    7.480    0.000    0.819    0.823
##    .SpatialBack       0.754    0.122    6.181    0.000    0.754    0.740
##    .LetMem            0.945    0.106    8.944    0.000    0.945    0.951
##    .NumLett           0.410    0.090    4.536    0.000    0.410    0.411
##    .ColShape          0.489    0.087    5.644    0.000    0.489    0.492
##    .CatSwitch         0.726    0.090    8.058    0.000    0.726    0.730
##     Inhibit           1.000                               1.000    1.000
##     Update            1.000                               1.000    1.000
##     Shift             1.000                               1.000    1.000
## 
## R-Square:
##                    Estimate
##     StroopPerf        0.027
##     SSRTavg           0.023
##     Antisaccade       0.508
##     KeepTrack         0.177
##     SpatialBack       0.260
##     LetMem            0.049
##     NumLett           0.589
##     ColShape          0.508
##     CatSwitch         0.270

Fit indices indicated good model fit. However, covariance between Inhibit and Shift is .92. Question, should we see them as separate latent variables?

A visual representation of the three factor model

semPaths(cfa3f_fit, 'std', layout='tree')

Two factor CFA, combining Inhibit and Update

cfa2f<-'
Inhibit=~StroopPerf+SSRTavg+Antisaccade+KeepTrack+SpatialBack+LetMem
Shift=~ NumLett+ColShape+CatSwitch
'

cfa2f_fit <- cfa(cfa2f, std.lv=T, data, missing='ml')
summary(cfa2f_fit, fit.measures=T, standardized=T, rsquare=T)
## lavaan 0.6-3 ended normally after 18 iterations
## 
##   Optimization method                           NLMINB
##   Number of free parameters                         28
## 
##   Number of observations                           176
##   Number of missing patterns                        19
## 
##   Estimator                                         ML
##   Model Fit Test Statistic                      24.146
##   Degrees of freedom                                26
##   P-value (Chi-square)                           0.568
## 
## Model test baseline model:
## 
##   Minimum Function Test Statistic              189.969
##   Degrees of freedom                                36
##   P-value                                        0.000
## 
## User model versus baseline model:
## 
##   Comparative Fit Index (CFI)                    1.000
##   Tucker-Lewis Index (TLI)                       1.017
## 
## Loglikelihood and Information Criteria:
## 
##   Loglikelihood user model (H0)              -2016.861
##   Loglikelihood unrestricted model (H1)      -2004.788
## 
##   Number of free parameters                         28
##   Akaike (AIC)                                4089.722
##   Bayesian (BIC)                              4178.495
##   Sample-size adjusted Bayesian (BIC)         4089.826
## 
## Root Mean Square Error of Approximation:
## 
##   RMSEA                                          0.000
##   90 Percent Confidence Interval          0.000  0.054
##   P-value RMSEA <= 0.05                          0.926
## 
## Standardized Root Mean Square Residual:
## 
##   SRMR                                           0.047
## 
## Parameter Estimates:
## 
##   Information                                 Observed
##   Observed information based on                Hessian
##   Standard Errors                             Standard
## 
## Latent Variables:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   Inhibit =~                                                            
##     StroopPerf        0.155    0.098    1.579    0.114    0.155    0.156
##     SSRTavg           0.154    0.107    1.438    0.150    0.154    0.155
##     Antisaccade       0.645    0.103    6.281    0.000    0.645    0.646
##     KeepTrack         0.425    0.099    4.316    0.000    0.425    0.426
##     SpatialBack       0.521    0.113    4.613    0.000    0.521    0.516
##     LetMem            0.227    0.098    2.321    0.020    0.227    0.227
##   Shift =~                                                              
##     NumLett           0.764    0.082    9.280    0.000    0.764    0.765
##     ColShape          0.713    0.081    8.815    0.000    0.713    0.716
##     CatSwitch         0.519    0.083    6.267    0.000    0.519    0.520
## 
## Covariances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   Inhibit ~~                                                            
##     Shift             0.645    0.103    6.266    0.000    0.645    0.645
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .StroopPerf       -0.000    0.075   -0.000    1.000   -0.000   -0.000
##    .SSRTavg          -0.007    0.084   -0.086    0.931   -0.007   -0.007
##    .Antisaccade      -0.023    0.078   -0.290    0.772   -0.023   -0.023
##    .KeepTrack        -0.009    0.077   -0.122    0.903   -0.009   -0.009
##    .SpatialBack      -0.048    0.084   -0.572    0.568   -0.048   -0.048
##    .LetMem           -0.000    0.075   -0.006    0.995   -0.000   -0.000
##    .NumLett          -0.015    0.076   -0.199    0.842   -0.015   -0.015
##    .ColShape          0.000    0.075    0.000    1.000    0.000    0.000
##    .CatSwitch        -0.004    0.076   -0.051    0.960   -0.004   -0.004
##     Inhibit           0.000                               0.000    0.000
##     Shift             0.000                               0.000    0.000
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .StroopPerf        0.970    0.105    9.213    0.000    0.970    0.976
##    .SSRTavg           0.968    0.117    8.251    0.000    0.968    0.976
##    .Antisaccade       0.579    0.116    4.996    0.000    0.579    0.582
##    .KeepTrack         0.814    0.105    7.755    0.000    0.814    0.818
##    .SpatialBack       0.747    0.115    6.521    0.000    0.747    0.734
##    .LetMem            0.943    0.105    8.996    0.000    0.943    0.948
##    .NumLett           0.414    0.090    4.616    0.000    0.414    0.415
##    .ColShape          0.485    0.086    5.618    0.000    0.485    0.488
##    .CatSwitch         0.726    0.090    8.066    0.000    0.726    0.730
##     Inhibit           1.000                               1.000    1.000
##     Shift             1.000                               1.000    1.000
## 
## R-Square:
##                    Estimate
##     StroopPerf        0.024
##     SSRTavg           0.024
##     Antisaccade       0.418
##     KeepTrack         0.182
##     SpatialBack       0.266
##     LetMem            0.052
##     NumLett           0.585
##     ColShape          0.512
##     CatSwitch         0.270

A visual representation of the two factor model

semPaths(cfa2f_fit, 'std', layout='tree')

Stroop and SSR load load regardless of the 3 or 2 factor model.

Chi-square difference test of the 3-factor and 2-factor model

anova(cfa2f_fit, cfa3f_fit)

These model did not differ significantly.

One factor CFA model fit

cfa1f<-'
Inhibit=~StroopPerf+SSRTavg+Antisaccade+KeepTrack+SpatialBack+LetMem+NumLett+ColShape+CatSwitch
'

cfa1f_fit <- cfa(cfa1f, std.lv=T, data, missing='ml')
summary(cfa1f_fit, fit.measures=T, standardized=T, rsquare=T)
## lavaan 0.6-3 ended normally after 16 iterations
## 
##   Optimization method                           NLMINB
##   Number of free parameters                         27
## 
##   Number of observations                           176
##   Number of missing patterns                        19
## 
##   Estimator                                         ML
##   Model Fit Test Statistic                      35.748
##   Degrees of freedom                                27
##   P-value (Chi-square)                           0.121
## 
## Model test baseline model:
## 
##   Minimum Function Test Statistic              189.969
##   Degrees of freedom                                36
##   P-value                                        0.000
## 
## User model versus baseline model:
## 
##   Comparative Fit Index (CFI)                    0.943
##   Tucker-Lewis Index (TLI)                       0.924
## 
## Loglikelihood and Information Criteria:
## 
##   Loglikelihood user model (H0)              -2022.662
##   Loglikelihood unrestricted model (H1)      -2004.788
## 
##   Number of free parameters                         27
##   Akaike (AIC)                                4099.324
##   Bayesian (BIC)                              4184.927
##   Sample-size adjusted Bayesian (BIC)         4099.424
## 
## Root Mean Square Error of Approximation:
## 
##   RMSEA                                          0.043
##   90 Percent Confidence Interval          0.000  0.077
##   P-value RMSEA <= 0.05                          0.593
## 
## Standardized Root Mean Square Residual:
## 
##   SRMR                                           0.057
## 
## Parameter Estimates:
## 
##   Information                                 Observed
##   Observed information based on                Hessian
##   Standard Errors                             Standard
## 
## Latent Variables:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   Inhibit =~                                                            
##     StroopPerf        0.078    0.088    0.885    0.376    0.078    0.078
##     SSRTavg           0.135    0.093    1.448    0.148    0.135    0.135
##     Antisaccade       0.472    0.087    5.444    0.000    0.472    0.474
##     KeepTrack         0.369    0.086    4.291    0.000    0.369    0.370
##     SpatialBack       0.383    0.106    3.622    0.000    0.383    0.381
##     LetMem            0.122    0.087    1.406    0.160    0.122    0.123
##     NumLett           0.748    0.079    9.457    0.000    0.748    0.748
##     ColShape          0.690    0.079    8.779    0.000    0.690    0.693
##     CatSwitch         0.527    0.082    6.424    0.000    0.527    0.529
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .StroopPerf        0.000    0.075    0.000    1.000    0.000    0.000
##    .SSRTavg          -0.002    0.084   -0.020    0.984   -0.002   -0.002
##    .Antisaccade      -0.006    0.078   -0.077    0.938   -0.006   -0.006
##    .KeepTrack         0.000    0.077    0.003    0.998    0.000    0.000
##    .SpatialBack      -0.032    0.084   -0.386    0.699   -0.032   -0.032
##    .LetMem           -0.000    0.075   -0.000    1.000   -0.000   -0.000
##    .NumLett          -0.017    0.076   -0.219    0.827   -0.017   -0.017
##    .ColShape         -0.000    0.075   -0.002    0.999   -0.000   -0.000
##    .CatSwitch        -0.004    0.076   -0.055    0.956   -0.004   -0.004
##     Inhibit           0.000                               0.000    0.000
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .StroopPerf        0.988    0.106    9.358    0.000    0.988    0.994
##    .SSRTavg           0.974    0.117    8.343    0.000    0.974    0.982
##    .Antisaccade       0.770    0.096    8.015    0.000    0.770    0.775
##    .KeepTrack         0.857    0.099    8.645    0.000    0.857    0.863
##    .SpatialBack       0.866    0.110    7.868    0.000    0.866    0.855
##    .LetMem            0.979    0.105    9.305    0.000    0.979    0.985
##    .NumLett           0.439    0.082    5.345    0.000    0.439    0.440
##    .ColShape          0.517    0.081    6.343    0.000    0.517    0.520
##    .CatSwitch         0.716    0.089    8.049    0.000    0.716    0.721
##     Inhibit           1.000                               1.000    1.000
## 
## R-Square:
##                    Estimate
##     StroopPerf        0.006
##     SSRTavg           0.018
##     Antisaccade       0.225
##     KeepTrack         0.137
##     SpatialBack       0.145
##     LetMem            0.015
##     NumLett           0.560
##     ColShape          0.480
##     CatSwitch         0.279

Chi-square difference test of the 3-factor and 1-factor model

anova(cfa1f_fit, cfa2f_fit)

Chi_square difference test suggests that 2-factor model fits siginificantly better than the 1 factor model (delta df = 1).

Full CFA including Executive functions side and Category side

cfa_all3f<-'
Inhibit=~StroopPerf+SSRTavg+Antisaccade
Update=~KeepTrack+SpatialBack+LetMem
Shift=~NumLett+ColShape+CatSwitch

FR =~ FR1 + FR2 + FR3 + FR4 
SD =~ SD1 + SD2 + SD3 + SD4 
'

Three factors on the EF side

cfa_all3f_fit <- cfa(cfa_all3f, std.lv=T, data, missing='ml')
## 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(cfa_all3f_fit, fit.measures=T, standardized=T, rsquare=T)
## lavaan 0.6-3 ended normally after 44 iterations
## 
##   Optimization method                           NLMINB
##   Number of free parameters                         61
## 
##   Number of observations                           176
##   Number of missing patterns                        21
## 
##   Estimator                                         ML
##   Model Fit Test Statistic                     167.933
##   Degrees of freedom                               109
##   P-value (Chi-square)                           0.000
## 
## Model test baseline model:
## 
##   Minimum Function Test Statistic             1191.672
##   Degrees of freedom                               136
##   P-value                                        0.000
## 
## User model versus baseline model:
## 
##   Comparative Fit Index (CFI)                    0.944
##   Tucker-Lewis Index (TLI)                       0.930
## 
## Loglikelihood and Information Criteria:
## 
##   Loglikelihood user model (H0)              -3547.702
##   Loglikelihood unrestricted model (H1)      -3463.735
## 
##   Number of free parameters                         61
##   Akaike (AIC)                                7217.403
##   Bayesian (BIC)                              7410.803
##   Sample-size adjusted Bayesian (BIC)         7217.631
## 
## Root Mean Square Error of Approximation:
## 
##   RMSEA                                          0.055
##   90 Percent Confidence Interval          0.038  0.071
##   P-value RMSEA <= 0.05                          0.284
## 
## Standardized Root Mean Square Residual:
## 
##   SRMR                                           0.061
## 
## Parameter Estimates:
## 
##   Information                                 Observed
##   Observed information based on                Hessian
##   Standard Errors                             Standard
## 
## Latent Variables:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   Inhibit =~                                                            
##     StroopPerf        0.213    0.093    2.294    0.022    0.213    0.214
##     SSRTavg           0.210    0.101    2.080    0.038    0.210    0.211
##     Antisaccade       0.589    0.148    3.988    0.000    0.589    0.590
##   Update =~                                                             
##     KeepTrack         0.364    0.103    3.535    0.000    0.364    0.364
##     SpatialBack       0.587    0.127    4.642    0.000    0.587    0.581
##     LetMem            0.179    0.097    1.845    0.065    0.179    0.179
##   Shift =~                                                              
##     NumLett           0.758    0.083    9.162    0.000    0.758    0.760
##     ColShape          0.718    0.082    8.793    0.000    0.718    0.721
##     CatSwitch         0.518    0.083    6.263    0.000    0.518    0.519
##   FR =~                                                                 
##     FR1               0.536    0.076    7.078    0.000    0.536    0.537
##     FR2               0.770    0.068   11.284    0.000    0.770    0.772
##     FR3               0.839    0.065   12.805    0.000    0.839    0.841
##     FR4               0.821    0.066   12.424    0.000    0.821    0.824
##   SD =~                                                                 
##     SD1               0.660    0.069    9.526    0.000    0.660    0.662
##     SD2               0.865    0.061   14.093    0.000    0.865    0.867
##     SD3               0.943    0.058   16.372    0.000    0.943    0.946
##     SD4               0.894    0.060   14.991    0.000    0.894    0.896
## 
## Covariances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   Inhibit ~~                                                            
##     Update            1.060    0.279    3.799    0.000    1.060    1.060
##     Shift             0.629    0.178    3.538    0.000    0.629    0.629
##     FR                0.593    0.177    3.355    0.001    0.593    0.593
##     SD                0.610    0.158    3.858    0.000    0.610    0.610
##   Update ~~                                                             
##     Shift             0.615    0.161    3.833    0.000    0.615    0.615
##     FR                0.343    0.141    2.436    0.015    0.343    0.343
##     SD                0.576    0.135    4.275    0.000    0.576    0.576
##   Shift ~~                                                              
##     FR                0.238    0.092    2.583    0.010    0.238    0.238
##     SD                0.109    0.092    1.181    0.238    0.109    0.109
##   FR ~~                                                                 
##     SD                0.370    0.075    4.930    0.000    0.370    0.370
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .StroopPerf       -0.000    0.075   -0.000    1.000   -0.000   -0.000
##    .SSRTavg          -0.016    0.084   -0.192    0.848   -0.016   -0.016
##    .Antisaccade      -0.024    0.078   -0.311    0.756   -0.024   -0.024
##    .KeepTrack        -0.012    0.077   -0.154    0.878   -0.012   -0.012
##    .SpatialBack      -0.066    0.084   -0.789    0.430   -0.066   -0.065
##    .LetMem           -0.000    0.075   -0.005    0.996   -0.000   -0.000
##    .NumLett          -0.014    0.076   -0.179    0.858   -0.014   -0.014
##    .ColShape          0.000    0.075    0.001    0.999    0.000    0.000
##    .CatSwitch        -0.004    0.076   -0.049    0.961   -0.004   -0.004
##    .FR1               0.004    0.076    0.047    0.962    0.004    0.004
##    .FR2               0.005    0.076    0.068    0.946    0.005    0.005
##    .FR3               0.006    0.076    0.074    0.941    0.006    0.006
##    .FR4               0.005    0.076    0.073    0.942    0.005    0.006
##    .SD1              -0.001    0.076   -0.015    0.988   -0.001   -0.001
##    .SD2              -0.002    0.076   -0.020    0.984   -0.002   -0.002
##    .SD3              -0.002    0.076   -0.022    0.983   -0.002   -0.002
##    .SD4              -0.002    0.076   -0.021    0.984   -0.002   -0.002
##     Inhibit           0.000                               0.000    0.000
##     Update            0.000                               0.000    0.000
##     Shift             0.000                               0.000    0.000
##     FR                0.000                               0.000    0.000
##     SD                0.000                               0.000    0.000
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .StroopPerf        0.949    0.104    9.134    0.000    0.949    0.954
##    .SSRTavg           0.950    0.116    8.217    0.000    0.950    0.956
##    .Antisaccade       0.649    0.166    3.901    0.000    0.649    0.652
##    .KeepTrack         0.863    0.107    8.045    0.000    0.863    0.867
##    .SpatialBack       0.675    0.135    4.988    0.000    0.675    0.662
##    .LetMem            0.962    0.105    9.148    0.000    0.962    0.968
##    .NumLett           0.421    0.091    4.645    0.000    0.421    0.422
##    .ColShape          0.477    0.088    5.418    0.000    0.477    0.480
##    .CatSwitch         0.726    0.090    8.074    0.000    0.726    0.730
##    .FR1               0.708    0.082    8.638    0.000    0.708    0.712
##    .FR2               0.402    0.058    6.979    0.000    0.402    0.404
##    .FR3               0.291    0.051    5.722    0.000    0.291    0.293
##    .FR4               0.320    0.052    6.137    0.000    0.320    0.322
##    .SD1               0.559    0.064    8.667    0.000    0.559    0.562
##    .SD2               0.247    0.035    7.019    0.000    0.247    0.248
##    .SD3               0.105    0.025    4.209    0.000    0.105    0.105
##    .SD4               0.196    0.028    6.896    0.000    0.196    0.197
##     Inhibit           1.000                               1.000    1.000
##     Update            1.000                               1.000    1.000
##     Shift             1.000                               1.000    1.000
##     FR                1.000                               1.000    1.000
##     SD                1.000                               1.000    1.000
## 
## R-Square:
##                    Estimate
##     StroopPerf        0.046
##     SSRTavg           0.044
##     Antisaccade       0.348
##     KeepTrack         0.133
##     SpatialBack       0.338
##     LetMem            0.032
##     NumLett           0.578
##     ColShape          0.520
##     CatSwitch         0.270
##     FR1               0.288
##     FR2               0.596
##     FR3               0.707
##     FR4               0.678
##     SD1               0.438
##     SD2               0.752
##     SD3               0.895
##     SD4               0.803

Lavaan spitted out warning, let’s check the figure with loadings to find out where problem lays.

Visual representation of CFA all 3 factors EF

semPaths(cfa_all3f_fit, "std", layout = "tree")

Covariance between Inhibit and Update is over 1, which usually suggests these should not be seen as separate.

Two factors on the EF side

cfa_all2f<-'
InhUpd=~StroopPerf+SSRTavg+Antisaccade+KeepTrack+SpatialBack+LetMem
Shift=~NumLett+ColShape+CatSwitch

FR =~ FR1 + FR2 + FR3 + FR4 
SD =~ SD1 + SD2 + SD3 + SD4 
'

cfa_all2f_fit <- cfa(cfa_all2f, std.lv=T, data, missing='ml',std.lv=T)
summary(cfa_all2f_fit, fit.measures=T, standardized=T, rsquare=T)
## lavaan 0.6-3 ended normally after 30 iterations
## 
##   Optimization method                           NLMINB
##   Number of free parameters                         57
## 
##   Number of observations                           176
##   Number of missing patterns                        21
## 
##   Estimator                                         ML
##   Model Fit Test Statistic                     170.211
##   Degrees of freedom                               113
##   P-value (Chi-square)                           0.000
## 
## Model test baseline model:
## 
##   Minimum Function Test Statistic             1191.672
##   Degrees of freedom                               136
##   P-value                                        0.000
## 
## User model versus baseline model:
## 
##   Comparative Fit Index (CFI)                    0.946
##   Tucker-Lewis Index (TLI)                       0.935
## 
## Loglikelihood and Information Criteria:
## 
##   Loglikelihood user model (H0)              -3548.841
##   Loglikelihood unrestricted model (H1)      -3463.735
## 
##   Number of free parameters                         57
##   Akaike (AIC)                                7211.682
##   Bayesian (BIC)                              7392.399
##   Sample-size adjusted Bayesian (BIC)         7211.894
## 
## Root Mean Square Error of Approximation:
## 
##   RMSEA                                          0.054
##   90 Percent Confidence Interval          0.036  0.070
##   P-value RMSEA <= 0.05                          0.345
## 
## Standardized Root Mean Square Residual:
## 
##   SRMR                                           0.062
## 
## Parameter Estimates:
## 
##   Information                                 Observed
##   Observed information based on                Hessian
##   Standard Errors                             Standard
## 
## Latent Variables:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   InhUpd =~                                                             
##     StroopPerf        0.220    0.090    2.451    0.014    0.220    0.221
##     SSRTavg           0.195    0.102    1.912    0.056    0.195    0.195
##     Antisaccade       0.641    0.091    7.044    0.000    0.641    0.643
##     KeepTrack         0.331    0.093    3.540    0.000    0.331    0.331
##     SpatialBack       0.585    0.098    5.987    0.000    0.585    0.581
##     LetMem            0.182    0.092    1.992    0.046    0.182    0.183
##   Shift =~                                                              
##     NumLett           0.757    0.083    9.166    0.000    0.757    0.759
##     ColShape          0.720    0.081    8.843    0.000    0.720    0.722
##     CatSwitch         0.518    0.083    6.257    0.000    0.518    0.519
##   FR =~                                                                 
##     FR1               0.536    0.076    7.078    0.000    0.536    0.537
##     FR2               0.770    0.068   11.279    0.000    0.770    0.772
##     FR3               0.839    0.066   12.809    0.000    0.839    0.841
##     FR4               0.821    0.066   12.409    0.000    0.821    0.823
##   SD =~                                                                 
##     SD1               0.661    0.069    9.540    0.000    0.661    0.663
##     SD2               0.865    0.061   14.113    0.000    0.865    0.868
##     SD3               0.942    0.058   16.356    0.000    0.942    0.945
##     SD4               0.894    0.060   14.992    0.000    0.894    0.896
## 
## Covariances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   InhUpd ~~                                                             
##     Shift             0.596    0.104    5.751    0.000    0.596    0.596
##     FR                0.462    0.102    4.534    0.000    0.462    0.462
##     SD                0.581    0.090    6.465    0.000    0.581    0.581
##   Shift ~~                                                              
##     FR                0.237    0.092    2.574    0.010    0.237    0.237
##     SD                0.108    0.092    1.178    0.239    0.108    0.108
##   FR ~~                                                                 
##     SD                0.370    0.075    4.924    0.000    0.370    0.370
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .StroopPerf       -0.000    0.075   -0.000    1.000   -0.000   -0.000
##    .SSRTavg          -0.014    0.084   -0.167    0.867   -0.014   -0.014
##    .Antisaccade      -0.026    0.078   -0.332    0.740   -0.026   -0.026
##    .KeepTrack        -0.012    0.077   -0.149    0.881   -0.012   -0.012
##    .SpatialBack      -0.066    0.083   -0.796    0.426   -0.066   -0.066
##    .LetMem           -0.000    0.075   -0.005    0.996   -0.000   -0.000
##    .NumLett          -0.014    0.076   -0.180    0.857   -0.014   -0.014
##    .ColShape          0.000    0.075    0.002    0.998    0.000    0.000
##    .CatSwitch        -0.004    0.076   -0.050    0.961   -0.004   -0.004
##    .FR1               0.004    0.076    0.048    0.962    0.004    0.004
##    .FR2               0.005    0.076    0.069    0.945    0.005    0.005
##    .FR3               0.006    0.076    0.076    0.940    0.006    0.006
##    .FR4               0.006    0.076    0.074    0.941    0.006    0.006
##    .SD1              -0.001    0.076   -0.017    0.987   -0.001   -0.001
##    .SD2              -0.002    0.076   -0.022    0.983   -0.002   -0.002
##    .SD3              -0.002    0.076   -0.024    0.981   -0.002   -0.002
##    .SD4              -0.002    0.076   -0.023    0.982   -0.002   -0.002
##     InhUpd            0.000                               0.000    0.000
##     Shift             0.000                               0.000    0.000
##     FR                0.000                               0.000    0.000
##     SD                0.000                               0.000    0.000
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .StroopPerf        0.946    0.103    9.160    0.000    0.946    0.951
##    .SSRTavg           0.955    0.116    8.239    0.000    0.955    0.962
##    .Antisaccade       0.583    0.098    5.947    0.000    0.583    0.587
##    .KeepTrack         0.886    0.103    8.566    0.000    0.886    0.890
##    .SpatialBack       0.673    0.101    6.637    0.000    0.673    0.663
##    .LetMem            0.961    0.105    9.192    0.000    0.961    0.967
##    .NumLett           0.422    0.090    4.686    0.000    0.422    0.424
##    .ColShape          0.475    0.088    5.425    0.000    0.475    0.478
##    .CatSwitch         0.727    0.090    8.075    0.000    0.727    0.731
##    .FR1               0.707    0.082    8.636    0.000    0.707    0.711
##    .FR2               0.402    0.058    6.968    0.000    0.402    0.404
##    .FR3               0.290    0.051    5.696    0.000    0.290    0.292
##    .FR4               0.321    0.052    6.143    0.000    0.321    0.323
##    .SD1               0.557    0.064    8.661    0.000    0.557    0.561
##    .SD2               0.245    0.035    6.998    0.000    0.245    0.247
##    .SD3               0.106    0.025    4.259    0.000    0.106    0.107
##    .SD4               0.196    0.028    6.877    0.000    0.196    0.197
##     InhUpd            1.000                               1.000    1.000
##     Shift             1.000                               1.000    1.000
##     FR                1.000                               1.000    1.000
##     SD                1.000                               1.000    1.000
## 
## R-Square:
##                    Estimate
##     StroopPerf        0.049
##     SSRTavg           0.038
##     Antisaccade       0.413
##     KeepTrack         0.110
##     SpatialBack       0.337
##     LetMem            0.033
##     NumLett           0.576
##     ColShape          0.522
##     CatSwitch         0.269
##     FR1               0.289
##     FR2               0.596
##     FR3               0.708
##     FR4               0.677
##     SD1               0.439
##     SD2               0.753
##     SD3               0.893
##     SD4               0.803

Visual representation of CFA all 2 factors EF

semPaths(cfa_all2f_fit, "std", layout = "tree")

Seems like the 2 facors EF solution fits better than 3 factor solution

Full structural model

Two latent factors of EF predict SD category performance

sem2f_sd<-'
InhUpd=~StroopPerf+SSRTavg+Antisaccade+KeepTrack+SpatialBack+LetMem
Shift=~NumLett+ColShape+CatSwitch
#FR =~ FR1 + FR2 + FR3 + FR4
SD =~ SD1 + SD2 + SD3 + SD4

SD~InhUpd+Shift
'
sem2f_fit_sd <- sem(sem2f_sd, data, missing='ml')
summary(sem2f_fit_sd, fit.measures=T, standardized=T, rsquare=T)
## lavaan 0.6-3 ended normally after 73 iterations
## 
##   Optimization method                           NLMINB
##   Number of free parameters                         42
## 
##   Number of observations                           176
##   Number of missing patterns                        20
## 
##   Estimator                                         ML
##   Model Fit Test Statistic                     104.015
##   Degrees of freedom                                62
##   P-value (Chi-square)                           0.001
## 
## Model test baseline model:
## 
##   Minimum Function Test Statistic              818.597
##   Degrees of freedom                                78
##   P-value                                        0.000
## 
## User model versus baseline model:
## 
##   Comparative Fit Index (CFI)                    0.943
##   Tucker-Lewis Index (TLI)                       0.929
## 
## Loglikelihood and Information Criteria:
## 
##   Loglikelihood user model (H0)              -2722.381
##   Loglikelihood unrestricted model (H1)      -2670.373
## 
##   Number of free parameters                         42
##   Akaike (AIC)                                5528.761
##   Bayesian (BIC)                              5661.922
##   Sample-size adjusted Bayesian (BIC)         5528.918
## 
## Root Mean Square Error of Approximation:
## 
##   RMSEA                                          0.062
##   90 Percent Confidence Interval          0.040  0.082
##   P-value RMSEA <= 0.05                          0.166
## 
## Standardized Root Mean Square Residual:
## 
##   SRMR                                           0.053
## 
## Parameter Estimates:
## 
##   Information                                 Observed
##   Observed information based on                Hessian
##   Standard Errors                             Standard
## 
## Latent Variables:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   InhUpd =~                                                             
##     StroopPerf        1.000                               0.211    0.211
##     SSRTavg           0.764    0.576    1.326    0.185    0.161    0.161
##     Antisaccade       3.018    1.353    2.230    0.026    0.636    0.638
##     KeepTrack         1.710    0.848    2.017    0.044    0.360    0.361
##     SpatialBack       2.830    1.281    2.209    0.027    0.596    0.590
##     LetMem            0.839    0.573    1.465    0.143    0.177    0.177
##   Shift =~                                                              
##     NumLett           1.000                               0.756    0.758
##     ColShape          0.947    0.147    6.462    0.000    0.716    0.719
##     CatSwitch         0.692    0.129    5.360    0.000    0.523    0.525
##   SD =~                                                                 
##     SD1               1.000                               0.658    0.660
##     SD2               1.312    0.130   10.086    0.000    0.864    0.867
##     SD3               1.432    0.139   10.337    0.000    0.943    0.946
##     SD4               1.357    0.135   10.020    0.000    0.893    0.896
## 
## Regressions:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   SD ~                                                                  
##     InhUpd            2.544    1.262    2.017    0.044    0.814    0.814
##     Shift            -0.343    0.162   -2.117    0.034   -0.394   -0.394
## 
## Covariances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   InhUpd ~~                                                             
##     Shift             0.097    0.045    2.146    0.032    0.606    0.606
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .StroopPerf       -0.000    0.075   -0.000    1.000   -0.000   -0.000
##    .SSRTavg          -0.011    0.084   -0.134    0.894   -0.011   -0.011
##    .Antisaccade      -0.027    0.078   -0.350    0.727   -0.027   -0.027
##    .KeepTrack        -0.012    0.077   -0.157    0.875   -0.012   -0.012
##    .SpatialBack      -0.068    0.083   -0.814    0.415   -0.068   -0.067
##    .LetMem           -0.000    0.075   -0.006    0.995   -0.000   -0.000
##    .NumLett          -0.014    0.076   -0.186    0.853   -0.014   -0.014
##    .ColShape         -0.000    0.075   -0.001    0.999   -0.000   -0.000
##    .CatSwitch        -0.004    0.076   -0.050    0.960   -0.004   -0.004
##    .SD1              -0.000    0.076   -0.006    0.995   -0.000   -0.000
##    .SD2              -0.001    0.076   -0.008    0.994   -0.001   -0.001
##    .SD3              -0.001    0.076   -0.009    0.993   -0.001   -0.001
##    .SD4              -0.001    0.076   -0.008    0.993   -0.001   -0.001
##     InhUpd            0.000                               0.000    0.000
##     Shift             0.000                               0.000    0.000
##    .SD                0.000                               0.000    0.000
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .StroopPerf        0.950    0.104    9.169    0.000    0.950    0.955
##    .SSRTavg           0.967    0.117    8.292    0.000    0.967    0.974
##    .Antisaccade       0.590    0.098    6.020    0.000    0.590    0.593
##    .KeepTrack         0.866    0.102    8.488    0.000    0.866    0.870
##    .SpatialBack       0.667    0.103    6.462    0.000    0.667    0.652
##    .LetMem            0.963    0.105    9.198    0.000    0.963    0.969
##    .NumLett           0.424    0.089    4.736    0.000    0.424    0.425
##    .ColShape          0.480    0.087    5.528    0.000    0.480    0.483
##    .CatSwitch         0.721    0.090    8.014    0.000    0.721    0.724
##    .SD1               0.560    0.065    8.676    0.000    0.560    0.564
##    .SD2               0.247    0.035    7.026    0.000    0.247    0.249
##    .SD3               0.104    0.025    4.177    0.000    0.104    0.105
##    .SD4               0.195    0.028    6.886    0.000    0.195    0.196
##     InhUpd            0.044    0.038    1.161    0.246    1.000    1.000
##     Shift             0.572    0.124    4.595    0.000    1.000    1.000
##    .SD                0.247    0.075    3.291    0.001    0.571    0.571
## 
## R-Square:
##                    Estimate
##     StroopPerf        0.045
##     SSRTavg           0.026
##     Antisaccade       0.407
##     KeepTrack         0.130
##     SpatialBack       0.348
##     LetMem            0.031
##     NumLett           0.575
##     ColShape          0.517
##     CatSwitch         0.276
##     SD1               0.436
##     SD2               0.751
##     SD3               0.895
##     SD4               0.804
##     SD                0.429
semPaths(sem2f_fit_sd, "std", layout = "tree")

Two latent factors of EF predict FR category performance

sem2f_fr<-'
InhUpd=~StroopPerf+SSRTavg+Antisaccade+KeepTrack+SpatialBack+LetMem
Shift=~NumLett+ColShape+CatSwitch
FR =~ FR1 + FR2 + FR3 + FR4
#SD =~ SD1 + SD2 + SD3 + SD4

FR~InhUpd+Shift
'
sem2f_fit_fr <- sem(sem2f_fr, data, missing='ml')
summary(sem2f_fit_fr, fit.measures=T, standardized=T, rsquare=T)
## lavaan 0.6-3 ended normally after 73 iterations
## 
##   Optimization method                           NLMINB
##   Number of free parameters                         42
## 
##   Number of observations                           176
##   Number of missing patterns                        20
## 
##   Estimator                                         ML
##   Model Fit Test Statistic                      78.596
##   Degrees of freedom                                62
##   P-value (Chi-square)                           0.076
## 
## Model test baseline model:
## 
##   Minimum Function Test Statistic              540.364
##   Degrees of freedom                                78
##   P-value                                        0.000
## 
## User model versus baseline model:
## 
##   Comparative Fit Index (CFI)                    0.964
##   Tucker-Lewis Index (TLI)                       0.955
## 
## Loglikelihood and Information Criteria:
## 
##   Loglikelihood user model (H0)              -2848.788
##   Loglikelihood unrestricted model (H1)      -2809.490
## 
##   Number of free parameters                         42
##   Akaike (AIC)                                5781.575
##   Bayesian (BIC)                              5914.736
##   Sample-size adjusted Bayesian (BIC)         5781.732
## 
## Root Mean Square Error of Approximation:
## 
##   RMSEA                                          0.039
##   90 Percent Confidence Interval          0.000  0.063
##   P-value RMSEA <= 0.05                          0.750
## 
## Standardized Root Mean Square Residual:
## 
##   SRMR                                           0.063
## 
## Parameter Estimates:
## 
##   Information                                 Observed
##   Observed information based on                Hessian
##   Standard Errors                             Standard
## 
## Latent Variables:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   InhUpd =~                                                             
##     StroopPerf        1.000                               0.183    0.183
##     SSRTavg           1.152    0.815    1.413    0.158    0.211    0.211
##     Antisaccade       3.688    1.988    1.855    0.064    0.674    0.674
##     KeepTrack         1.976    1.151    1.717    0.086    0.361    0.362
##     SpatialBack       2.828    1.559    1.814    0.070    0.517    0.515
##     LetMem            1.259    0.849    1.483    0.138    0.230    0.231
##   Shift =~                                                              
##     NumLett           1.000                               0.762    0.763
##     ColShape          0.943    0.148    6.377    0.000    0.718    0.721
##     CatSwitch         0.675    0.127    5.297    0.000    0.514    0.516
##   FR =~                                                                 
##     FR1               1.000                               0.530    0.532
##     FR2               1.452    0.213    6.826    0.000    0.770    0.772
##     FR3               1.593    0.233    6.852    0.000    0.845    0.847
##     FR4               1.542    0.231    6.689    0.000    0.818    0.820
## 
## Regressions:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   FR ~                                                                  
##     InhUpd            1.460    0.919    1.589    0.112    0.503    0.503
##     Shift            -0.051    0.113   -0.451    0.652   -0.073   -0.073
## 
## Covariances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   InhUpd ~~                                                             
##     Shift             0.085    0.047    1.815    0.070    0.614    0.614
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .StroopPerf        0.000    0.075    0.000    1.000    0.000    0.000
##    .SSRTavg          -0.011    0.084   -0.134    0.893   -0.011   -0.011
##    .Antisaccade      -0.022    0.078   -0.284    0.776   -0.022   -0.022
##    .KeepTrack        -0.010    0.077   -0.129    0.897   -0.010   -0.010
##    .SpatialBack      -0.049    0.083   -0.586    0.558   -0.049   -0.049
##    .LetMem           -0.000    0.075   -0.004    0.997   -0.000   -0.000
##    .NumLett          -0.015    0.076   -0.193    0.847   -0.015   -0.015
##    .ColShape          0.000    0.075    0.004    0.996    0.000    0.000
##    .CatSwitch        -0.004    0.076   -0.050    0.960   -0.004   -0.004
##    .FR1               0.003    0.076    0.043    0.966    0.003    0.003
##    .FR2               0.005    0.076    0.063    0.950    0.005    0.005
##    .FR3               0.005    0.076    0.069    0.945    0.005    0.005
##    .FR4               0.005    0.076    0.067    0.947    0.005    0.005
##     InhUpd            0.000                               0.000    0.000
##     Shift             0.000                               0.000    0.000
##    .FR                0.000                               0.000    0.000
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .StroopPerf        0.961    0.105    9.178    0.000    0.961    0.966
##    .SSRTavg           0.948    0.116    8.137    0.000    0.948    0.955
##    .Antisaccade       0.544    0.112    4.879    0.000    0.544    0.545
##    .KeepTrack         0.865    0.104    8.300    0.000    0.865    0.869
##    .SpatialBack       0.741    0.109    6.822    0.000    0.741    0.735
##    .LetMem            0.941    0.104    9.033    0.000    0.941    0.947
##    .NumLett           0.416    0.091    4.579    0.000    0.416    0.417
##    .ColShape          0.477    0.088    5.453    0.000    0.477    0.480
##    .CatSwitch         0.730    0.090    8.104    0.000    0.730    0.734
##    .FR1               0.713    0.082    8.661    0.000    0.713    0.717
##    .FR2               0.402    0.058    6.922    0.000    0.402    0.404
##    .FR3               0.281    0.051    5.478    0.000    0.281    0.283
##    .FR4               0.326    0.053    6.209    0.000    0.326    0.328
##     InhUpd            0.033    0.035    0.959    0.337    1.000    1.000
##     Shift             0.581    0.126    4.593    0.000    1.000    1.000
##    .FR                0.221    0.067    3.310    0.001    0.787    0.787
## 
## R-Square:
##                    Estimate
##     StroopPerf        0.034
##     SSRTavg           0.045
##     Antisaccade       0.455
##     KeepTrack         0.131
##     SpatialBack       0.265
##     LetMem            0.053
##     NumLett           0.583
##     ColShape          0.520
##     CatSwitch         0.266
##     FR1               0.283
##     FR2               0.596
##     FR3               0.717
##     FR4               0.672
##     FR                0.213
semPaths(sem2f_fit_fr, "std", layout = "tree")

Two latent factors of EF predict both SD & FR category performance

sem2f_both<-'
InhUpd=~StroopPerf+SSRTavg+Antisaccade+KeepTrack+SpatialBack+LetMem
Shift=~NumLett+ColShape+CatSwitch
FR =~ FR1 + FR2 + FR3 + FR4
SD =~ SD1 + SD2 + SD3 + SD4

FR~InhUpd+Shift
SD~InhUpd+Shift
'
sem2f_fit_both <- sem(sem2f_both, data, missing='ml',std.lv=T)
sum<-summary(sem2f_fit_both, fit.measures=T, standardized=T, rsquare=T)
## lavaan 0.6-3 ended normally after 38 iterations
## 
##   Optimization method                           NLMINB
##   Number of free parameters                         57
## 
##   Number of observations                           176
##   Number of missing patterns                        21
## 
##   Estimator                                         ML
##   Model Fit Test Statistic                     170.211
##   Degrees of freedom                               113
##   P-value (Chi-square)                           0.000
## 
## Model test baseline model:
## 
##   Minimum Function Test Statistic             1191.672
##   Degrees of freedom                               136
##   P-value                                        0.000
## 
## User model versus baseline model:
## 
##   Comparative Fit Index (CFI)                    0.946
##   Tucker-Lewis Index (TLI)                       0.935
## 
## Loglikelihood and Information Criteria:
## 
##   Loglikelihood user model (H0)              -3548.841
##   Loglikelihood unrestricted model (H1)      -3463.735
## 
##   Number of free parameters                         57
##   Akaike (AIC)                                7211.682
##   Bayesian (BIC)                              7392.399
##   Sample-size adjusted Bayesian (BIC)         7211.894
## 
## Root Mean Square Error of Approximation:
## 
##   RMSEA                                          0.054
##   90 Percent Confidence Interval          0.036  0.070
##   P-value RMSEA <= 0.05                          0.345
## 
## Standardized Root Mean Square Residual:
## 
##   SRMR                                           0.062
## 
## Parameter Estimates:
## 
##   Information                                 Observed
##   Observed information based on                Hessian
##   Standard Errors                             Standard
## 
## Latent Variables:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   InhUpd =~                                                             
##     StroopPerf        0.220    0.090    2.451    0.014    0.220    0.221
##     SSRTavg           0.195    0.102    1.912    0.056    0.195    0.195
##     Antisaccade       0.641    0.091    7.044    0.000    0.641    0.643
##     KeepTrack         0.331    0.093    3.540    0.000    0.331    0.331
##     SpatialBack       0.585    0.098    5.987    0.000    0.585    0.581
##     LetMem            0.182    0.092    1.992    0.046    0.182    0.183
##   Shift =~                                                              
##     NumLett           0.757    0.083    9.166    0.000    0.757    0.759
##     ColShape          0.720    0.081    8.843    0.000    0.720    0.722
##     CatSwitch         0.518    0.083    6.257    0.000    0.518    0.519
##   FR =~                                                                 
##     FR1               0.474    0.071    6.693    0.000    0.536    0.537
##     FR2               0.682    0.070    9.691    0.000    0.770    0.772
##     FR3               0.743    0.071   10.467    0.000    0.839    0.841
##     FR4               0.727    0.069   10.477    0.000    0.821    0.823
##   SD =~                                                                 
##     SD1               0.501    0.076    6.613    0.000    0.661    0.663
##     SD2               0.656    0.086    7.647    0.000    0.865    0.868
##     SD3               0.714    0.091    7.818    0.000    0.942    0.945
##     SD4               0.677    0.088    7.724    0.000    0.894    0.896
## 
## Regressions:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   FR ~                                                                  
##     InhUpd            0.562    0.216    2.607    0.009    0.498    0.498
##     Shift            -0.068    0.177   -0.381    0.703   -0.060   -0.060
##   SD ~                                                                  
##     InhUpd            1.058    0.341    3.101    0.002    0.802    0.802
##     Shift            -0.488    0.269   -1.813    0.070   -0.370   -0.370
## 
## Covariances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   InhUpd ~~                                                             
##     Shift             0.596    0.104    5.751    0.000    0.596    0.596
##  .FR ~~                                                                 
##    .SD                0.130    0.140    0.927    0.354    0.130    0.130
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .StroopPerf        0.000    0.075    0.000    1.000    0.000    0.000
##    .SSRTavg          -0.014    0.084   -0.167    0.867   -0.014   -0.014
##    .Antisaccade      -0.026    0.078   -0.332    0.740   -0.026   -0.026
##    .KeepTrack        -0.012    0.077   -0.149    0.881   -0.012   -0.012
##    .SpatialBack      -0.066    0.083   -0.796    0.426   -0.066   -0.066
##    .LetMem           -0.000    0.075   -0.005    0.996   -0.000   -0.000
##    .NumLett          -0.014    0.076   -0.180    0.857   -0.014   -0.014
##    .ColShape          0.000    0.075    0.002    0.998    0.000    0.000
##    .CatSwitch        -0.004    0.076   -0.050    0.961   -0.004   -0.004
##    .FR1               0.004    0.076    0.048    0.962    0.004    0.004
##    .FR2               0.005    0.076    0.069    0.945    0.005    0.005
##    .FR3               0.006    0.076    0.076    0.940    0.006    0.006
##    .FR4               0.006    0.076    0.074    0.941    0.006    0.006
##    .SD1              -0.001    0.076   -0.017    0.987   -0.001   -0.001
##    .SD2              -0.002    0.076   -0.022    0.983   -0.002   -0.002
##    .SD3              -0.002    0.076   -0.024    0.981   -0.002   -0.002
##    .SD4              -0.002    0.076   -0.023    0.982   -0.002   -0.002
##     InhUpd            0.000                               0.000    0.000
##     Shift             0.000                               0.000    0.000
##    .FR                0.000                               0.000    0.000
##    .SD                0.000                               0.000    0.000
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .StroopPerf        0.946    0.103    9.160    0.000    0.946    0.951
##    .SSRTavg           0.955    0.116    8.239    0.000    0.955    0.962
##    .Antisaccade       0.583    0.098    5.947    0.000    0.583    0.587
##    .KeepTrack         0.886    0.103    8.566    0.000    0.886    0.890
##    .SpatialBack       0.673    0.101    6.637    0.000    0.673    0.663
##    .LetMem            0.961    0.105    9.192    0.000    0.961    0.967
##    .NumLett           0.422    0.090    4.686    0.000    0.422    0.424
##    .ColShape          0.475    0.088    5.425    0.000    0.475    0.478
##    .CatSwitch         0.727    0.090    8.075    0.000    0.727    0.731
##    .FR1               0.707    0.082    8.636    0.000    0.707    0.711
##    .FR2               0.402    0.058    6.968    0.000    0.402    0.404
##    .FR3               0.290    0.051    5.696    0.000    0.290    0.292
##    .FR4               0.321    0.052    6.143    0.000    0.321    0.323
##    .SD1               0.557    0.064    8.661    0.000    0.557    0.561
##    .SD2               0.245    0.035    6.998    0.000    0.245    0.247
##    .SD3               0.106    0.025    4.259    0.000    0.106    0.107
##    .SD4               0.196    0.028    6.877    0.000    0.196    0.197
##     InhUpd            1.000                               1.000    1.000
##     Shift             1.000                               1.000    1.000
##    .FR                1.000                               0.784    0.784
##    .SD                1.000                               0.574    0.574
## 
## R-Square:
##                    Estimate
##     StroopPerf        0.049
##     SSRTavg           0.038
##     Antisaccade       0.413
##     KeepTrack         0.110
##     SpatialBack       0.337
##     LetMem            0.033
##     NumLett           0.576
##     ColShape          0.522
##     CatSwitch         0.269
##     FR1               0.289
##     FR2               0.596
##     FR3               0.708
##     FR4               0.677
##     SD1               0.439
##     SD2               0.753
##     SD3               0.893
##     SD4               0.803
##     FR                0.216
##     SD                0.426
semPaths(sem2f_fit_both, "std", layout = "tree")

Two-factor EF predict both SD & FR, equality constraint on reg-coeff

test<-'
InhUpd=~StroopPerf+SSRTavg+Antisaccade+KeepTrack+SpatialBack+LetMem
Shift=~NumLett+ColShape+CatSwitch
FR =~ FR1 + FR2 + FR3 + FR4
SD =~ SD1 + SD2 + SD3 + SD4

FR ~ d1*InhUpd + d2*Shift 
SD ~ d1*InhUpd + d2*Shift
'
test_fit <- sem(test, data, missing='ml',std.lv=T)
sum_path<-summary(test_fit, fit.measures=T, standardized=T, rsquare=T)
## lavaan 0.6-3 ended normally after 34 iterations
## 
##   Optimization method                           NLMINB
##   Number of free parameters                         57
##   Number of equality constraints                     2
## 
##   Number of observations                           176
##   Number of missing patterns                        21
## 
##   Estimator                                         ML
##   Model Fit Test Statistic                     173.868
##   Degrees of freedom                               115
##   P-value (Chi-square)                           0.000
## 
## Model test baseline model:
## 
##   Minimum Function Test Statistic             1191.672
##   Degrees of freedom                               136
##   P-value                                        0.000
## 
## User model versus baseline model:
## 
##   Comparative Fit Index (CFI)                    0.944
##   Tucker-Lewis Index (TLI)                       0.934
## 
## Loglikelihood and Information Criteria:
## 
##   Loglikelihood user model (H0)              -3550.669
##   Loglikelihood unrestricted model (H1)      -3463.735
## 
##   Number of free parameters                         55
##   Akaike (AIC)                                7211.338
##   Bayesian (BIC)                              7385.715
##   Sample-size adjusted Bayesian (BIC)         7211.543
## 
## Root Mean Square Error of Approximation:
## 
##   RMSEA                                          0.054
##   90 Percent Confidence Interval          0.037  0.070
##   P-value RMSEA <= 0.05                          0.333
## 
## Standardized Root Mean Square Residual:
## 
##   SRMR                                           0.063
## 
## Parameter Estimates:
## 
##   Information                                 Observed
##   Observed information based on                Hessian
##   Standard Errors                             Standard
## 
## Latent Variables:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   InhUpd =~                                                             
##     StroopPerf        0.218    0.090    2.414    0.016    0.218    0.219
##     SSRTavg           0.214    0.101    2.118    0.034    0.214    0.214
##     Antisaccade       0.649    0.092    7.020    0.000    0.649    0.650
##     KeepTrack         0.322    0.094    3.418    0.001    0.322    0.322
##     SpatialBack       0.567    0.097    5.845    0.000    0.567    0.564
##     LetMem            0.193    0.092    2.100    0.036    0.193    0.193
##   Shift =~                                                              
##     NumLett           0.755    0.083    9.083    0.000    0.755    0.756
##     ColShape          0.721    0.082    8.835    0.000    0.721    0.723
##     CatSwitch         0.521    0.083    6.284    0.000    0.521    0.523
##   FR =~                                                                 
##     FR1               0.447    0.068    6.540    0.000    0.539    0.540
##     FR2               0.642    0.069    9.250    0.000    0.773    0.773
##     FR3               0.698    0.070    9.966    0.000    0.841    0.840
##     FR4               0.686    0.069    9.919    0.000    0.826    0.826
##   SD =~                                                                 
##     SD1               0.545    0.066    8.203    0.000    0.657    0.660
##     SD2               0.714    0.067   10.583    0.000    0.861    0.866
##     SD3               0.780    0.069   11.315    0.000    0.940    0.946
##     SD4               0.739    0.068   10.896    0.000    0.890    0.895
## 
## Regressions:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   FR ~                                                                  
##     InhUpd    (d1)    0.800    0.223    3.587    0.000    0.664    0.664
##     Shift     (d2)   -0.275    0.185   -1.493    0.136   -0.229   -0.229
##   SD ~                                                                  
##     InhUpd    (d1)    0.800    0.223    3.587    0.000    0.664    0.664
##     Shift     (d2)   -0.275    0.185   -1.493    0.136   -0.229   -0.229
## 
## Covariances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   InhUpd ~~                                                             
##     Shift             0.599    0.104    5.765    0.000    0.599    0.599
##  .FR ~~                                                                 
##    .SD                0.092    0.143    0.644    0.520    0.092    0.092
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .StroopPerf        0.000    0.075    0.000    1.000    0.000    0.000
##    .SSRTavg          -0.015    0.084   -0.177    0.859   -0.015   -0.015
##    .Antisaccade      -0.024    0.078   -0.314    0.754   -0.024   -0.024
##    .KeepTrack        -0.011    0.077   -0.142    0.887   -0.011   -0.011
##    .SpatialBack      -0.062    0.083   -0.746    0.455   -0.062   -0.062
##    .LetMem           -0.000    0.075   -0.004    0.997   -0.000   -0.000
##    .NumLett          -0.015    0.076   -0.191    0.849   -0.015   -0.015
##    .ColShape          0.000    0.075    0.002    0.998    0.000    0.000
##    .CatSwitch        -0.004    0.076   -0.051    0.959   -0.004   -0.004
##    .FR1               0.005    0.076    0.062    0.951    0.005    0.005
##    .FR2               0.007    0.076    0.089    0.929    0.007    0.007
##    .FR3               0.007    0.076    0.097    0.923    0.007    0.007
##    .FR4               0.007    0.076    0.095    0.924    0.007    0.007
##    .SD1              -0.002    0.076   -0.023    0.982   -0.002   -0.002
##    .SD2              -0.002    0.075   -0.030    0.976   -0.002   -0.002
##    .SD3              -0.002    0.075   -0.032    0.974   -0.002   -0.002
##    .SD4              -0.002    0.075   -0.031    0.976   -0.002   -0.002
##     InhUpd            0.000                               0.000    0.000
##     Shift             0.000                               0.000    0.000
##    .FR                0.000                               0.000    0.000
##    .SD                0.000                               0.000    0.000
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .StroopPerf        0.947    0.103    9.156    0.000    0.947    0.952
##    .SSRTavg           0.947    0.115    8.207    0.000    0.947    0.954
##    .Antisaccade       0.574    0.100    5.733    0.000    0.574    0.577
##    .KeepTrack         0.892    0.104    8.582    0.000    0.892    0.896
##    .SpatialBack       0.688    0.102    6.770    0.000    0.688    0.682
##    .LetMem            0.957    0.104    9.168    0.000    0.957    0.963
##    .NumLett           0.427    0.091    4.706    0.000    0.427    0.428
##    .ColShape          0.474    0.088    5.388    0.000    0.474    0.477
##    .CatSwitch         0.723    0.090    8.029    0.000    0.723    0.727
##    .FR1               0.707    0.082    8.632    0.000    0.707    0.709
##    .FR2               0.403    0.058    6.981    0.000    0.403    0.402
##    .FR3               0.294    0.051    5.781    0.000    0.294    0.294
##    .FR4               0.319    0.052    6.110    0.000    0.319    0.318
##    .SD1               0.560    0.065    8.675    0.000    0.560    0.565
##    .SD2               0.248    0.035    7.038    0.000    0.248    0.251
##    .SD3               0.103    0.025    4.157    0.000    0.103    0.104
##    .SD4               0.196    0.028    6.919    0.000    0.196    0.198
##     InhUpd            1.000                               1.000    1.000
##     Shift             1.000                               1.000    1.000
##    .FR                1.000                               0.689    0.689
##    .SD                1.000                               0.689    0.689
## 
## R-Square:
##                    Estimate
##     StroopPerf        0.048
##     SSRTavg           0.046
##     Antisaccade       0.423
##     KeepTrack         0.104
##     SpatialBack       0.318
##     LetMem            0.037
##     NumLett           0.572
##     ColShape          0.523
##     CatSwitch         0.273
##     FR1               0.291
##     FR2               0.598
##     FR3               0.706
##     FR4               0.682
##     SD1               0.435
##     SD2               0.749
##     SD3               0.896
##     SD4               0.802
##     FR                0.311
##     SD                0.311
semPaths(test_fit, "std", layout = "tree")

EF components predict larger proportion of performance variance in SD than in FR. Inhibit+Update positively predict FR and SD, while Shift negatively predict FR and SD. Recall that Shift is measured by task switch RT, which means, people with longer delays in response tend to have lower performance in category learning.

Two latent factors of EF, Path model of Category performance

This is a path model where InhUpd and Shift predict FR1 and SD1, and the each following block predicts the block after

sem2f_path<-'
InhUpd=~StroopPerf+SSRTavg+Antisaccade+KeepTrack+SpatialBack+LetMem
Shift=~NumLett+ColShape+CatSwitch

FR1~InhUpd+Shift

SD1~InhUpd+Shift

FR2~FR1
FR3~FR2
FR4~FR3

SD2~SD1
SD3~SD2
SD4~SD3
'
sem2f_path_fit <- sem(sem2f_path, data, missing='ml',std.lv=T)
sum_path<-summary(sem2f_path_fit, fit.measures=T, standardized=T, rsquare=T)
## lavaan 0.6-3 ended normally after 29 iterations
## 
##   Optimization method                           NLMINB
##   Number of free parameters                         55
## 
##   Number of observations                           176
##   Number of missing patterns                        21
## 
##   Estimator                                         ML
##   Model Fit Test Statistic                     172.945
##   Degrees of freedom                               115
##   P-value (Chi-square)                           0.000
## 
## Model test baseline model:
## 
##   Minimum Function Test Statistic             1191.672
##   Degrees of freedom                               136
##   P-value                                        0.000
## 
## User model versus baseline model:
## 
##   Comparative Fit Index (CFI)                    0.945
##   Tucker-Lewis Index (TLI)                       0.935
## 
## Loglikelihood and Information Criteria:
## 
##   Loglikelihood user model (H0)              -3550.208
##   Loglikelihood unrestricted model (H1)      -3463.735
## 
##   Number of free parameters                         55
##   Akaike (AIC)                                7210.416
##   Bayesian (BIC)                              7384.793
##   Sample-size adjusted Bayesian (BIC)         7210.621
## 
## Root Mean Square Error of Approximation:
## 
##   RMSEA                                          0.054
##   90 Percent Confidence Interval          0.036  0.069
##   P-value RMSEA <= 0.05                          0.349
## 
## Standardized Root Mean Square Residual:
## 
##   SRMR                                           0.100
## 
## Parameter Estimates:
## 
##   Information                                 Observed
##   Observed information based on                Hessian
##   Standard Errors                             Standard
## 
## Latent Variables:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   InhUpd =~                                                             
##     StroopPerf        0.191    0.091    2.091    0.037    0.191    0.191
##     SSRTavg           0.196    0.102    1.920    0.055    0.196    0.197
##     Antisaccade       0.670    0.090    7.452    0.000    0.670    0.673
##     KeepTrack         0.337    0.092    3.656    0.000    0.337    0.338
##     SpatialBack       0.539    0.099    5.461    0.000    0.539    0.536
##     LetMem            0.212    0.092    2.314    0.021    0.212    0.213
##   Shift =~                                                              
##     NumLett           0.744    0.083    9.015    0.000    0.744    0.746
##     ColShape          0.726    0.081    8.945    0.000    0.726    0.728
##     CatSwitch         0.528    0.083    6.367    0.000    0.528    0.529
## 
## Regressions:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   FR1 ~                                                                 
##     InhUpd            0.421    0.134    3.135    0.002    0.421    0.423
##     Shift            -0.073    0.132   -0.555    0.579   -0.073   -0.073
##   SD1 ~                                                                 
##     InhUpd            0.679    0.161    4.226    0.000    0.679    0.682
##     Shift            -0.346    0.162   -2.130    0.033   -0.346   -0.347
##   FR2 ~                                                                 
##     FR1               0.504    0.066    7.673    0.000    0.504    0.504
##   FR3 ~                                                                 
##     FR2               0.641    0.058   10.983    0.000    0.641    0.641
##   FR4 ~                                                                 
##     FR3               0.711    0.053   13.416    0.000    0.711    0.712
##   SD2 ~                                                                 
##     SD1               0.711    0.053   13.301    0.000    0.711    0.711
##   SD3 ~                                                                 
##     SD2               0.811    0.044   18.259    0.000    0.811    0.811
##   SD4 ~                                                                 
##     SD3               0.854    0.039   22.055    0.000    0.854    0.862
## 
## Covariances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   InhUpd ~~                                                             
##     Shift             0.608    0.104    5.861    0.000    0.608    0.608
##  .FR4 ~~                                                                
##    .SD4               0.038    0.027    1.402    0.161    0.038    0.110
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .StroopPerf       -0.000    0.075   -0.000    1.000   -0.000   -0.000
##    .SSRTavg          -0.013    0.084   -0.152    0.879   -0.013   -0.013
##    .Antisaccade      -0.028    0.078   -0.357    0.721   -0.028   -0.028
##    .KeepTrack        -0.012    0.077   -0.156    0.876   -0.012   -0.012
##    .SpatialBack      -0.059    0.083   -0.710    0.477   -0.059   -0.059
##    .LetMem           -0.001    0.075   -0.013    0.990   -0.001   -0.001
##    .NumLett          -0.015    0.076   -0.201    0.841   -0.015   -0.015
##    .ColShape         -0.000    0.075   -0.006    0.995   -0.000   -0.000
##    .CatSwitch        -0.004    0.076   -0.052    0.959   -0.004   -0.004
##    .FR1               0.005    0.076    0.064    0.949    0.005    0.005
##    .SD1              -0.003    0.076   -0.046    0.963   -0.003   -0.003
##    .FR2               0.000    0.065    0.000    1.000    0.000    0.000
##    .FR3               0.000    0.058    0.000    1.000    0.000    0.000
##    .FR4               0.001    0.053    0.018    0.986    0.001    0.001
##    .SD2               0.000    0.053    0.000    1.000    0.000    0.000
##    .SD3               0.000    0.044    0.000    1.000    0.000    0.000
##    .SD4              -0.000    0.038   -0.011    0.991   -0.000   -0.000
##     InhUpd            0.000                               0.000    0.000
##     Shift             0.000                               0.000    0.000
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .StroopPerf        0.958    0.104    9.203    0.000    0.958    0.963
##    .SSRTavg           0.954    0.116    8.226    0.000    0.954    0.961
##    .Antisaccade       0.543    0.098    5.567    0.000    0.543    0.547
##    .KeepTrack         0.882    0.103    8.578    0.000    0.882    0.886
##    .SpatialBack       0.720    0.104    6.953    0.000    0.720    0.713
##    .LetMem            0.949    0.104    9.131    0.000    0.949    0.955
##    .NumLett           0.443    0.089    4.976    0.000    0.443    0.444
##    .ColShape          0.467    0.087    5.349    0.000    0.467    0.470
##    .CatSwitch         0.716    0.090    7.967    0.000    0.716    0.720
##    .FR1               0.849    0.102    8.285    0.000    0.849    0.854
##    .SD1               0.699    0.116    6.020    0.000    0.699    0.703
##    .FR2               0.742    0.080    9.301    0.000    0.742    0.746
##    .FR3               0.586    0.063    9.301    0.000    0.586    0.589
##    .FR4               0.488    0.052    9.301    0.000    0.488    0.493
##    .SD2               0.492    0.053    9.301    0.000    0.492    0.494
##    .SD3               0.340    0.037    9.301    0.000    0.340    0.342
##    .SD4               0.250    0.027    9.297    0.000    0.250    0.256
##     InhUpd            1.000                               1.000    1.000
##     Shift             1.000                               1.000    1.000
## 
## R-Square:
##                    Estimate
##     StroopPerf        0.037
##     SSRTavg           0.039
##     Antisaccade       0.453
##     KeepTrack         0.114
##     SpatialBack       0.287
##     LetMem            0.045
##     NumLett           0.556
##     ColShape          0.530
##     CatSwitch         0.280
##     FR1               0.146
##     SD1               0.297
##     FR2               0.254
##     FR3               0.411
##     FR4               0.507
##     SD2               0.506
##     SD3               0.658
##     SD4               0.744
semPaths(sem2f_path_fit, "std", layout = "tree")

Two latent factors of EF drop StroopPerf and SSR

sem2f_norm<-'
InhUpd=~Antisaccade+KeepTrack+SpatialBack+LetMem
Shift=~NumLett+ColShape+CatSwitch
FR =~ FR1 + FR2 + FR3 + FR4
SD =~ SD1 + SD2 + SD3 + SD4

FR ~ d1*InhUpd + d2*Shift 
SD ~ d1*InhUpd + d2*Shift

#FR=~0*SD
'
sem2f_norm_fit <- sem(sem2f_norm, data, missing='ml', std.lv=T)
sum_drop<-summary(sem2f_norm_fit, fit.measures=T, standardized=T, rsquare=T)
## lavaan 0.6-3 ended normally after 34 iterations
## 
##   Optimization method                           NLMINB
##   Number of free parameters                         51
##   Number of equality constraints                     2
## 
##   Number of observations                           176
##   Number of missing patterns                        14
## 
##   Estimator                                         ML
##   Model Fit Test Statistic                     132.988
##   Degrees of freedom                                86
##   P-value (Chi-square)                           0.001
## 
## Model test baseline model:
## 
##   Minimum Function Test Statistic             1140.886
##   Degrees of freedom                               105
##   P-value                                        0.000
## 
## User model versus baseline model:
## 
##   Comparative Fit Index (CFI)                    0.955
##   Tucker-Lewis Index (TLI)                       0.945
## 
## Loglikelihood and Information Criteria:
## 
##   Loglikelihood user model (H0)              -3106.822
##   Loglikelihood unrestricted model (H1)      -3040.328
## 
##   Number of free parameters                         49
##   Akaike (AIC)                                6311.644
##   Bayesian (BIC)                              6466.997
##   Sample-size adjusted Bayesian (BIC)         6311.826
## 
## Root Mean Square Error of Approximation:
## 
##   RMSEA                                          0.056
##   90 Percent Confidence Interval          0.036  0.074
##   P-value RMSEA <= 0.05                          0.294
## 
## Standardized Root Mean Square Residual:
## 
##   SRMR                                           0.060
## 
## Parameter Estimates:
## 
##   Information                                 Observed
##   Observed information based on                Hessian
##   Standard Errors                             Standard
## 
## Latent Variables:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   InhUpd =~                                                             
##     Antisaccade       0.665    0.093    7.149    0.000    0.665    0.668
##     KeepTrack         0.329    0.094    3.511    0.000    0.329    0.330
##     SpatialBack       0.577    0.099    5.844    0.000    0.577    0.574
##     LetMem            0.206    0.092    2.222    0.026    0.206    0.206
##   Shift =~                                                              
##     NumLett           0.769    0.083    9.262    0.000    0.769    0.770
##     ColShape          0.708    0.081    8.710    0.000    0.708    0.710
##     CatSwitch         0.517    0.083    6.217    0.000    0.517    0.519
##   FR =~                                                                 
##     FR1               0.461    0.069    6.660    0.000    0.538    0.539
##     FR2               0.663    0.068    9.709    0.000    0.774    0.774
##     FR3               0.720    0.069   10.471    0.000    0.840    0.840
##     FR4               0.708    0.068   10.463    0.000    0.827    0.826
##   SD =~                                                                 
##     SD1               0.562    0.066    8.476    0.000    0.657    0.660
##     SD2               0.737    0.066   11.193    0.000    0.861    0.866
##     SD3               0.806    0.067   12.067    0.000    0.940    0.946
##     SD4               0.763    0.066   11.575    0.000    0.890    0.895
## 
## Regressions:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   FR ~                                                                  
##     InhUpd    (d1)    0.721    0.211    3.413    0.001    0.618    0.618
##     Shift     (d2)   -0.246    0.180   -1.368    0.171   -0.211   -0.211
##   SD ~                                                                  
##     InhUpd    (d1)    0.721    0.211    3.413    0.001    0.618    0.618
##     Shift     (d2)   -0.246    0.180   -1.368    0.171   -0.211   -0.211
## 
## Covariances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   InhUpd ~~                                                             
##     Shift             0.615    0.103    5.948    0.000    0.615    0.615
##  .FR ~~                                                                 
##    .SD                0.148    0.126    1.171    0.242    0.148    0.148
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .Antisaccade      -0.021    0.078   -0.266    0.790   -0.021   -0.021
##    .KeepTrack        -0.010    0.077   -0.132    0.895   -0.010   -0.010
##    .SpatialBack      -0.062    0.083   -0.747    0.455   -0.062   -0.062
##    .LetMem           -0.000    0.075   -0.006    0.995   -0.000   -0.000
##    .NumLett          -0.015    0.076   -0.199    0.842   -0.015   -0.015
##    .ColShape         -0.000    0.075   -0.003    0.998   -0.000   -0.000
##    .CatSwitch        -0.004    0.076   -0.047    0.963   -0.004   -0.004
##    .FR1               0.004    0.076    0.059    0.953    0.004    0.004
##    .FR2               0.006    0.076    0.084    0.933    0.006    0.006
##    .FR3               0.007    0.076    0.091    0.927    0.007    0.007
##    .FR4               0.007    0.076    0.090    0.928    0.007    0.007
##    .SD1              -0.002    0.076   -0.026    0.979   -0.002   -0.002
##    .SD2              -0.003    0.076   -0.034    0.973   -0.003   -0.003
##    .SD3              -0.003    0.075   -0.037    0.970   -0.003   -0.003
##    .SD4              -0.003    0.075   -0.035    0.972   -0.003   -0.003
##     InhUpd            0.000                               0.000    0.000
##     Shift             0.000                               0.000    0.000
##    .FR                0.000                               0.000    0.000
##    .SD                0.000                               0.000    0.000
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .Antisaccade       0.550    0.102    5.375    0.000    0.550    0.554
##    .KeepTrack         0.887    0.104    8.559    0.000    0.887    0.891
##    .SpatialBack       0.679    0.103    6.570    0.000    0.679    0.671
##    .LetMem            0.952    0.104    9.132    0.000    0.952    0.958
##    .NumLett           0.406    0.092    4.432    0.000    0.406    0.407
##    .ColShape          0.492    0.087    5.672    0.000    0.492    0.496
##    .CatSwitch         0.727    0.090    8.034    0.000    0.727    0.731
##    .FR1               0.708    0.082    8.634    0.000    0.708    0.710
##    .FR2               0.401    0.058    6.953    0.000    0.401    0.401
##    .FR3               0.295    0.051    5.791    0.000    0.295    0.295
##    .FR4               0.318    0.052    6.087    0.000    0.318    0.318
##    .SD1               0.560    0.065    8.674    0.000    0.560    0.565
##    .SD2               0.248    0.035    7.036    0.000    0.248    0.251
##    .SD3               0.103    0.025    4.159    0.000    0.103    0.105
##    .SD4               0.196    0.028    6.908    0.000    0.196    0.198
##     InhUpd            1.000                               1.000    1.000
##     Shift             1.000                               1.000    1.000
##    .FR                1.000                               0.734    0.734
##    .SD                1.000                               0.734    0.734
## 
## R-Square:
##                    Estimate
##     Antisaccade       0.446
##     KeepTrack         0.109
##     SpatialBack       0.329
##     LetMem            0.042
##     NumLett           0.593
##     ColShape          0.504
##     CatSwitch         0.269
##     FR1               0.290
##     FR2               0.599
##     FR3               0.705
##     FR4               0.682
##     SD1               0.435
##     SD2               0.749
##     SD3               0.895
##     SD4               0.802
##     FR                0.266
##     SD                0.266
semPaths(sem2f_norm_fit, "std", layout = "tree")