R packageslibrary(pacman)
pacman::p_load(psych,
reshape2,
metaSEM,
metafor,
robumeta,
clubSandwich,
lavaan,
dplyr,
devtools,
semPower)
#devtools::install_github("MathiasHarrer/dmetar")
library(dmetar)
## Data
## Note: If variables are not included, then code them completely as NA,
## including the diagonals (i.e., not 1 but NA in the diagonal for
## completely missing variables)
Auth_mat <-
'
1,
0.54, 1,
0.11, 0.39, 1,
0.08, 0.18, 0.32, 1,
0.36, 0.25, 0.15, -0.07, 1'
Barkul_mat_a <-
'
1,
0.95, 1,
0.47, 0.56, 1,
0.86, 0.84, 0.56, 1,
0.47, 0.49, 0.38, 0.6, 1
'
Barkul_mat_b <- '
1,
0.89, 1,
0.31, 0.47, 1,
0.64, 0.62, 0.38, 1,
0.28, 0.24, NA, 0.43, 1'
Berman_mat <-
'
1,
0.39, 1,
0.14, -0.23, 1,
-0.38, 0.14, 0.05, 1,
0.004, -0.29, 0.80, 0.25, 1
'
# Adjusted
Boynton_mat <-
'1
0.576, 1,
NA, NA, NA,
NA, NA, NA, NA,
NA, NA, NA, NA, NA
'
Callans_mat <-
'1
0.78, 1,
0.09, -0.01, 1,
0.26, 0.26, 0.27, 1,
0.51, 0.43, 0.42, 0.38, 1
'
#Carter Control Group Pre-Test
Carter_mat_a <-
'1
0.86, 1,
0.31, 0.28, 1,
0.05, 0.05, 0.54, 1,
0.81, 0.72, 0.49, 0.21, 1
'
#Carter Experimental Group Pre-Test
Carter_mat_b <-
'1,
0.82, 1,
0.62, 0.39, 1,
0.51, 0.40, 0.28, 1,
0.68, 0.60, 0.40, 0.33, 1
'
Chi_mat <-'
1,
0.433, 1,
-0.02, 0.42, 1,
0.18, 0.37, 0.42, 1,
-0.19, 0.4, 0.54, 0.45, 1,
'
Cho_mat_F <- '
1,
0.61, 1,
0.42, 0.43, 1,
0.32, 0.21, 0.58, 1,
0.69, 0.33, 0.63, 0.54, 1'
#Changed to Male correlation matrices from total
Cho_mat_M <- '
1,
0.59, 1,
0.26, 0.02, 1,
0.14, 0.31, 0.36, 1,
0.82, 0.69, 0.25, 0.24, 1,
'
Cockcroft_mat <- '
1,
0.29, 1,
0.42, 0.12, 1,
0.24, 0.65, 0.31, 1,
0.18, 0.31, 0.31, 0.46, 1 '
Conway_mat <-
'1,
0.82, 1,
0.45, 0.47, 1,
0.56, 0.56, 0.68, 1,
0.50, 0.43, 0.49, 0.65, 1
'
Crawford_mat <-
'1
0.94, 1,
0.38, 0.44, 1,
0.37, 0.48, 0.38, 1,
0.67, 0.72, 0.65, 0.40, 1
'
Digranes_mat <-
'1,
0.76, 1,
0.17, 0.45, 1,
0.80, 0.71, 0.09, 1,
0.81, 0.79, 0.37, 0.74, 1
'
## Adjusted
Dufner_mat <-
'1,
0.45, 1,
0.11, 0.09, 1,
-0.07, 0.42, 0.16, 1,
NA, NA, NA, NA, NA
'
Fishkin_mat <-
'1
0.60, 1,
0, -0.03, 1,
0.13, 0.11, 0.11, 1,
0.19, 0.26, 0.01, 0.09, 1
'
Forsyth_mat <-
'1,
0.91, 1,
0.56, 0.49, 1,
0.35, 0.40, 0.50, 1,
0.82, 0.77, 0.62, 0.33, 1'
#8th grade
Garcia_mat <-
'1,
0.626, 1,
0.392, 0.45, 1,
0.435, 0.387, 0.495, 1,
0.416, 0.525, 0.32, 0.567, 1'
Gollmar_mat <-
'1,
0.672, 1,
-0.26, 0.019, 1,
-0.13, 0.241, 0.377, 1,
0.188, 0.217, 0.22, 0.296, 1'
## Adjusted
Hamlen_mat <-'
1,
0.816, 1,
NA, NA, NA,
NA, NA, NA, NA,
0.319, 0.247, NA, NA, 1 '
Hokanson_mat <-
'1,
0.79, 1,
0.14, 0.28, 1,
0.32, 0.44, 0.48, 1,
0.48, 0.45, 0.36, 0.36, 1'
Houtz_mat <- '
1,
0.59, 1,
0.27, 0.16, 1,
0.49, 0.27, 0.22, 1,
0.5, 0.34, 0.46, 0.37, 1 '
Humble_mat <-
'1,
0.83, 1,
0.22, 0.28 1
0.44 0.38 0.06 1
0.34 0.25 0.07 0.37 1'
Ibrahim_mat_1 <- '
1,
0.611, 1,
0.524, 0.12, 1,
0.23, 0.246, 0.267, 1,
0.46, 0.485, 0.155, 0.484, 1 '
Kiehn_mat <-
'1,
0.8, 1,
NA, NA, NA,
NA, NA, NA, NA,
NA, NA, NA, NA, NA
'
#Kim (2006b)
Kim_mat_1 <- '
1,
0.844, 1,
0.351, 0.332, 1,
0.196, 0.209, 0.428, 1,
0.666, 0.563, 0.212, 0.443, 1
'
#Kim et al.(2006)
Kim_mat_2a <- '
1,
0.84, 1,
0.45, 0.49, 1,
0.39, 0.38, 0.49, 1,
0.65, 0.65, 0.34, 0.51, 1 '
Kim_mat_2b <- '
1,
0.79, 1,
0.08, 0.15, 1,
0.14, 0.15, 0.3, 1,
0.47, 0.48, 0.17, 0.25, 1 '
Kim_mat_2c <- '
1,
0.86, 1,
0.31, 0.32, 1,
0.22, 0.25, 0.41, 1,
0.66, 0.57, 0.2, 0.4, 1
'
#Kim et al. 2016
Kim_mat_3_a <- '
1,
0.46, 1,
-0.28, 0.24, 1,
0.1, 0.4, 0.51, 1,
-0.28, 0.12, 0.6, 0.66, 1'
Kim_mat_3_b <- '
1,
0.4, 1,
-0.27, 0.23, 1,
0.08, 0.34, 0.5, 1,
-0.22, 0.17, 0.64, 0.72, 1
'
Lew_mat <- '
1,
0.46, 1,
-0.15, 0.04, 1,
0.14, 0.36, 0.24, 1,
NA, NA, NA, NA, NA '
## Adjusted
Miranda_mat <-
'1,
0.49, 1,
0.02, 0.11, 1,
-0.25, -0.30, -0.31, 1,
0.41, 0.20, 0.14, -0.29, 1'
## Adjusted
#1st grade
Morrison_mat_a <-
'1,
0.36, 1,
NA, NA, NA,
NA, NA, NA, NA,
NA, NA, NA, NA, NA'
## Adjusted
#3rd grade
Morrison_mat_b <-
'1,
0.28, 1,
NA, NA, NA,
NA, NA, NA, NA,
NA, NA, NA, NA, NA'
## Adjusted
#5th grade
Morrison_mat_c <-
'1,
0.42, 1,
NA, NA, NA,
NA, NA, NA, NA,
NA, NA, NA, NA, NA'
Nguyen_mat <-
'1,
0.75, 1,
0.11, 0.09, 1,
0.17, 0.10, 0.15, 1,
0.38, 0.34, 0.13, 0.03, 1'
Zbarskaya_mat <-
'1,
0.614, 1,
0.008, 0.135, 1,
0.168, 0.327, 0.504, 1,
0.189, 0.153, 0.225, 0.442, 1'
#Children's house
Rose_mat_a <-
'1,
0.81, 1,
0.07, 0.27, 1,
0.66, 0.62, 0.57, 1,
-0.05, -0.06, -0.19, -0.12, 1'
#Montessori
Rose_mat_b <-
'1,
0.67, 1,
0.05, 0.13, 1,
0.56, 0.16, -0.30, 1,
0.34, 0.12, 0.43, 0.19, 1'
Roskos_mat_Y <-'
1,
0.26, 1,
0.15, 0.08, 1,
0.37, 0.47, 0.2, 1,
0.53, 0.31, 0.47, 0.37, 1 '
Roskos_mat_O <- '
1,
0.16, 1,
-0.06, -0.02, 1,
0.06, 0.25, 0.04, 1,
0.14, 0.29, 0.36, 0.47, 1
'
Samuels_mat <-
'1,
0.75, 1,
-0.11, 0.02, 1,
0.10, 0.24, 0.48, 1,
-0.16, -0.06, 0.07, 0.24, 1'
Shore_mat <-
'1,
0.26, 1,
-0.01, 0.33, 1,
-0.12, 0.70, 0.30, 1,
-0.29, 0.12, 0.54, 0.34, 1'
Stephens_mat <-
'1,
0.86, 1,
0.17, 0.16, 1,
0.33, 0.30, 0.12, 1,
0.65, 0.60, 0.30, 0.31, 1'
#Control Pre-Test
Storer_mat_a <-
'1,
0.77, 1,
0.11, 0.29, 1,
0.28, 0.19, 0.35, 1,
0.33, 0.49, -0.02, -0.14, 1'
#Treatment Pre-Test
Storer_mat_b <-
'1,
0.73, 1,
0.23, 0.20, 1,
0.43, 0.55, 0.29, 1,
0.57, 0.48, 0.40, 0.25, 1'
Tannehill_mat <-
'1,
0.84, 1,
0.35, 0.41, 1,
0.28, 0.36, 0.38, 1,
0.35, 0.33, 0.39, 0.41, 1'
Tisone_mat <-
'1,
0.68, 1,
-0.03, -0.12, 1,
0.15, 0.26, 0.30, 1,
0.13, 0.35, 0.11, 0.53, 1'
Trigani_mat <-
'1,
0.72, 1,
0.28, 0.24, 1,
0.17, 0.26, 0.37, 1,
0.69, 0.47, 0.52, 0.16, 1'
Voss_mat <-
'1,
0.71, 1,
0.43, 0.51, 1,
0.38, 0.44, 0.53, 1,
0.65, 0.79, 0.59, 0.42, 1'
Warne_mat <-
'1,
0.74, 1,
0.40, 0.37, 1,
0.35, 0.37, 0.43, 1,
0.63, 0.50, 0.50, 0.26, 1'
Watson_mat <-
'1,
0.64, 1,
NA, NA, NA,
0.41, 0.40, NA, 1,
NA, NA, NA, NA, NA'
Yoon_mat <-
'1,
0.73, 1,
-0.16, 0.08, 1,
0.08, 0.29, 0.47, 1,
0.09, 0.28, 0.53, 0.66, 1'
Zhang_mat <-
'1,
0.78, 1,
0.09, 0.15, 1,
0.25, 0.24, 0.33, 1,
0.83, 0.70, 0.06, 0.21, 1'
## New matrices after the update in 2023
Acar_mat <-
'1,
0.65, 1,
0.188, 0.274, 1,
0.338, 0.409, 0.363, 1,
0.529, 0.477, 0.413, 0.305, 1'
Acaretal_mat <-
'1,
0.763, 1,
0.089, 0.21, 1,
0.294, 0.367, 0.469, 1,
0.567, 0.54, 0.277, 0.318, 1'
Balci_mata <-
'1,
0.292, 1,
0, 0.221, 1,
0.176, 0.148, 0.304, 1,
-0.117, 0.154, 0.035, 0.047, 1'
Balci_matb <-
'1,
0.43, 1,
0.116, 0.166, 1,
0.267, 0.225, 0.363, 1,
-0.19, 0.016, -0.128, -0.107, 1'
Gao_mat <-
'1,
0.31, 1,
0.28, 0.34, 1,
0.39, 0.41, 0.25, 1,
0.28, 0.17, 0.26, 0.31, 1'
Liu_mat <-
'1,
0.94, 1,
0.32, 0.32, 1,
0.49, 0.48, 0.66, 1,
0.41, 0.39, 0.62, .67, 1'
Rubenstein_2020_a <-
'1,
0.828, 1,
0.331, 0.321, 1,
0.47, 0.55, 0.45, 1,
0.681, 0.64, 0.443, 0.526, 1'
Rubenstein_2022_b <-
'1,
0.629, 1,
0.238, 0.351, 1,
0.402, 0.509, 0.38, 1,
0.313, 0.394, 0.385, 0.305, 1'
Wan_mat <-
'1,
0.27, 1,
0.24, 0.35, 1,
0.17, 0.19, 0.27, 1,
0.19, 0.14, 0.12, 0.35, 1'
#This names columns and rows for correlation matrices
Auth_mat1 <-char2num(Auth_mat)
Auth <- getCov(Auth_mat1, diag=T)
colnames(Auth) <- c("Fl","Or", "El","Ab","Res")
rownames(Auth) <- c("Fl","Or", "El","Ab","Res")
#Barkul
Barkul_mat1 <-char2num(Barkul_mat_a)
Barkul <- getCov(Barkul_mat1, diag=T)
colnames(Barkul) <- c("Fl","Or", "El","Ab","Res")
rownames(Barkul) <- c("Fl","Or", "El","Ab","Res")
Barkul_mat2 <-char2num(Barkul_mat_b)
Barkul2 <- getCov(Barkul_mat2, diag=T)
colnames(Barkul2) <- c("Fl","Or", "El","Ab","Res")
rownames(Barkul2) <- c("Fl","Or", "El","Ab","Res")
Berman_mat1 <-char2num(Berman_mat)
Berman <- getCov(Berman_mat1, diag=T)
colnames(Berman) <- c("Fl","Or", "El","Ab","Res")
rownames(Berman) <- c("Fl","Or", "El","Ab","Res")
Boynton_mat1 <-char2num(Boynton_mat)
Boynton <- getCov(Boynton_mat1, diag=T)
colnames(Boynton) <- c("Fl","Or", "El","Ab","Res")
rownames(Boynton) <- c("Fl","Or", "El","Ab","Res")
Callans_mat1 <-char2num(Callans_mat)
Callans <- getCov(Callans_mat1, diag=T)
colnames(Callans) <- c("Fl","Or", "El","Ab","Res")
rownames(Callans) <- c("Fl","Or", "El","Ab","Res")
Carter_mat1 <-char2num(Carter_mat_a)
Carter_a <- getCov(Carter_mat1, diag=T)
colnames(Carter_a) <- c("Fl","Or", "El","Ab","Res")
rownames(Carter_a) <- c("Fl","Or", "El","Ab","Res")
Carter_mat2 <-char2num(Carter_mat_b)
Carter_b <- getCov(Carter_mat2, diag=T)
colnames(Carter_b) <- c("Fl","Or", "El","Ab","Res")
rownames(Carter_b) <- c("Fl","Or", "El","Ab","Res")
Chi_mat1 <-char2num(Chi_mat)
Chi <- getCov(Chi_mat1, diag=T)
colnames(Chi) <- c("Fl","Or", "Ab","El","Res")
rownames(Chi) <- c("Fl","Or", "Ab","El","Res")
Cho_mat1_F <-char2num(Cho_mat_F)
Cho_F <- getCov(Cho_mat1_F, diag=T)
colnames(Cho_F) <- c("Fl","Or", "Ab","El","Res")
rownames(Cho_F) <- c("Fl","Or", "Ab","El","Res")
Cho_mat1_M <-char2num(Cho_mat_M)
Cho_M <- getCov(Cho_mat1_M, diag=T)
colnames(Cho_M) <- c("Fl","Or", "Ab","El","Res")
rownames(Cho_M) <- c("Fl","Or", "Ab","El","Res")
Cockcroft_mat1 <-char2num(Cockcroft_mat)
Cockcroft <- getCov(Cockcroft_mat1, diag=T)
colnames(Cockcroft) <- c("Fl","Or", "Ab","El","Res")
rownames(Cockcroft) <- c("Fl","Or", "Ab","El","Res")
Conway_mat1 <-char2num(Conway_mat)
Conway <- getCov(Conway_mat1, diag=T)
colnames(Conway) <- c("Fl","Or", "El","Ab","Res")
rownames(Conway) <- c("Fl","Or", "El","Ab","Res")
Crawford_mat1 <-char2num(Crawford_mat)
Crawford <- getCov(Crawford_mat1, diag=T)
colnames(Crawford) <- c("Fl","Or", "El","Ab","Res")
rownames(Crawford) <- c("Fl","Or", "El","Ab","Res")
Digranes_mat1 <-char2num(Digranes_mat)
Digranes <- getCov(Digranes_mat1, diag=T)
colnames(Digranes) <- c("Fl","Or", "El","Ab","Res")
rownames(Digranes) <- c("Fl","Or", "El","Ab","Res")
Dufner_mat1 <-char2num(Dufner_mat)
Dufner <- getCov(Dufner_mat1, diag=T)
colnames(Dufner) <- c("Fl","Or", "El","Ab","Res")
rownames(Dufner) <- c("Fl","Or", "El","Ab","Res")
Fishkin_mat1 <-char2num(Fishkin_mat)
Fishkin <- getCov(Fishkin_mat1, diag=T)
colnames(Fishkin) <- c("Fl","Or", "El","Ab","Res")
rownames(Fishkin) <- c("Fl","Or", "El","Ab","Res")
Forsyth_mat1 <-char2num(Forsyth_mat)
Forsyth <- getCov(Forsyth_mat1, diag=T)
colnames(Forsyth) <- c("Fl","Or", "El","Ab","Res")
rownames(Forsyth) <- c("Fl","Or", "El","Ab","Res")
Garcia_mat1 <-char2num(Garcia_mat)
Garcia <- getCov(Garcia_mat1, diag=T)
colnames(Garcia) <- c("Fl","Or", "El","Ab","Res")
rownames(Garcia) <- c("Fl","Or", "El","Ab","Res")
Gollmar_mat1 <-char2num(Gollmar_mat)
Gollmar <- getCov(Gollmar_mat1, diag=T)
colnames(Gollmar) <- c("Fl","Or", "El","Ab","Res")
rownames(Gollmar) <- c("Fl","Or", "El","Ab","Res")
Hamlen_mat1 <-char2num(Hamlen_mat)
Hamlen<- getCov(Hamlen_mat1, diag=T)
colnames(Hamlen) <- c("Fl","Or", "Ab","El","Res")
rownames(Hamlen) <- c("Fl","Or", "Ab","El","Res")
Hokanson_mat1 <-char2num(Hokanson_mat)
Hokanson <- getCov(Hokanson_mat1, diag=T)
colnames(Hokanson) <- c("Fl","Or", "El","Ab","Res")
rownames(Hokanson) <- c("Fl","Or", "El","Ab","Res")
Houtz_mat1 <-char2num(Houtz_mat)
Houtz<- getCov(Houtz_mat1, diag=T)
colnames(Houtz) <- c("Fl","Or", "Ab","El","Res")
rownames(Houtz) <- c("Fl","Or", "Ab","El","Res")
Humble_mat1 <-char2num(Humble_mat)
Humble <- getCov(Humble_mat1, diag=T)
colnames(Humble) <- c("Fl","Or", "El","Ab","Res")
rownames(Humble) <- c("Fl","Or", "El","Ab","Res")
Ibrahim_mat1 <-char2num(Ibrahim_mat_1)
Ibrahim<- getCov(Ibrahim_mat1, diag=T)
colnames(Ibrahim) <- c("Fl","Or", "Ab","El","Res")
rownames(Ibrahim) <- c("Fl","Or", "Ab","El","Res")
Kiehn_mat1 <-char2num(Kiehn_mat)
Kiehn <- getCov(Kiehn_mat1, diag=T)
colnames(Kiehn) <- c("Fl","Or", "El","Ab","Res")
rownames(Kiehn) <- c("Fl","Or", "El","Ab","Res")
Kim_1_mat1 <-char2num(Kim_mat_1)
Kim_1<- getCov(Kim_1_mat1, diag=T)
colnames(Kim_1) <- c("Fl","Or", "Ab","El","Res")
rownames(Kim_1) <- c("Fl","Or", "Ab","El","Res")
Kim_2a_mat1 <-char2num(Kim_mat_2a)
Kim_2a<- getCov(Kim_2a_mat1, diag=T)
colnames(Kim_2a) <- c("Fl","Or", "Ab","El","Res")
rownames(Kim_2a) <- c("Fl","Or", "Ab","El","Res")
Kim_2b_mat1 <-char2num(Kim_mat_2b)
Kim_2b<- getCov(Kim_2b_mat1, diag=T)
colnames(Kim_2b) <- c("Fl","Or", "Ab","El","Res")
rownames(Kim_2b) <- c("Fl","Or", "Ab","El","Res")
Kim_2c_mat1 <-char2num(Kim_mat_2c)
Kim_2c<- getCov(Kim_2c_mat1, diag=T)
colnames(Kim_2c) <- c("Fl","Or", "Ab","El","Res")
rownames(Kim_2c) <- c("Fl","Or", "Ab","El","Res")
Kim_3_mat1 <-char2num(Kim_mat_3_a)
Kim_3a <- getCov(Kim_3_mat1, diag=T)
colnames(Kim_3a) <- c("Fl","Or", "Ab","El","Res")
rownames(Kim_3a) <- c("Fl","Or", "Ab","El","Res")
Kim_3_mat2 <-char2num(Kim_mat_3_b)
Kim_3b <- getCov(Kim_3_mat2, diag=T)
colnames(Kim_3b) <- c("Fl","Or", "Ab","El","Res")
rownames(Kim_3b) <- c("Fl","Or", "Ab","El","Res")
Lew_mat1 <-char2num(Lew_mat)
Lew<- getCov(Lew_mat1, diag=T)
colnames(Lew) <- c("Fl","Or", "Ab","El","Res")
rownames(Lew) <- c("Fl","Or", "Ab","El","Res")
Miranda_mat1 <-char2num(Miranda_mat)
Miranda <- getCov(Miranda_mat1, diag=T)
colnames(Miranda) <- c("Fl","Or", "El","Ab","Res")
rownames(Miranda) <- c("Fl","Or", "El","Ab","Res")
Morrison_mat1 <-char2num(Morrison_mat_a)
Morrison_a <- getCov(Morrison_mat1, diag=T)
colnames(Morrison_a) <- c("Fl","Or", "El","Ab","Res")
rownames(Morrison_a) <- c("Fl","Or", "El","Ab","Res")
Morrison_mat2 <-char2num(Morrison_mat_b)
Morrison_b <- getCov(Morrison_mat2, diag=T)
colnames(Morrison_b) <- c("Fl","Or", "El","Ab","Res")
rownames(Morrison_b) <- c("Fl","Or", "El","Ab","Res")
Morrison_mat3 <-char2num(Morrison_mat_c)
Morrison_c <- getCov(Morrison_mat3, diag=T)
colnames(Morrison_c) <- c("Fl","Or", "El","Ab","Res")
rownames(Morrison_c) <- c("Fl","Or", "El","Ab","Res")
Nguyen_mat1 <-char2num(Nguyen_mat)
Nguyen <- getCov(Nguyen_mat1, diag=T)
colnames(Nguyen) <- c("Fl","Or", "El","Ab","Res")
rownames(Nguyen) <- c("Fl","Or", "El","Ab","Res")
Zbarskaya_mat1 <-char2num(Zbarskaya_mat)
Zbarskaya <- getCov(Zbarskaya_mat1, diag=T)
colnames(Zbarskaya) <- c("Fl","Or", "El","Ab","Res")
rownames(Zbarskaya) <- c("Fl","Or", "El","Ab","Res")
#Children's Place
Rose_mat1 <- char2num(Rose_mat_a)
Rose <- getCov(Rose_mat1, diag=T)
colnames(Rose) <- c("Fl","Or", "El","Ab","Res")
rownames(Rose) <- c("Fl","Or", "El","Ab","Res")
#Montessori
Rose_mat2 <- char2num(Rose_mat_b)
Rose_b <- getCov(Rose_mat2, diag=T)
colnames(Rose_b) <- c("Fl","Or", "El","Ab","Res")
rownames(Rose_b) <- c("Fl","Or", "El","Ab","Res")
Roskos_mat1_Y <-char2num(Roskos_mat_Y)
Roskos_Y<- getCov(Roskos_mat1_Y, diag=T)
colnames(Roskos_Y) <- c("Fl","Or", "Ab","El","Res")
rownames(Roskos_Y) <- c("Fl","Or", "Ab","El","Res")
Roskos_mat1_O <-char2num(Roskos_mat_O)
Roskos_O<- getCov(Roskos_mat1_O, diag=T)
colnames(Roskos_O) <- c("Fl","Or", "Ab","El","Res")
rownames(Roskos_O) <- c("Fl","Or", "Ab","El","Res")
Samuels_mat1 <-char2num(Samuels_mat)
Samuels <- getCov(Samuels_mat1, diag=T)
colnames(Samuels) <- c("Fl","Or", "El","Ab","Res")
rownames(Samuels) <- c("Fl","Or", "El","Ab","Res")
Shore_mat1 <-char2num(Shore_mat)
Shore <- getCov(Shore_mat1, diag=T)
colnames(Shore) <- c("Fl","Or", "El","Ab","Res")
rownames(Shore) <- c("Fl","Or", "El","Ab","Res")
Stephens_mat1 <-char2num(Stephens_mat)
Stephens <- getCov(Stephens_mat1, diag=T)
colnames(Stephens) <- c("Fl","Or", "El","Ab","Res")
rownames(Stephens) <- c("Fl","Or", "El","Ab","Res")
Storer_mat1 <- char2num(Storer_mat_a)
Storer_a <- getCov(Rose_mat1, diag=T)
colnames(Storer_a) <- c("Fl","Or", "El","Ab","Res")
rownames(Storer_a) <- c("Fl","Or", "El","Ab","Res")
Storer_mat2 <- char2num(Storer_mat_b)
Storer_b <- getCov(Storer_mat2, diag=T)
colnames(Storer_b) <- c("Fl","Or", "El","Ab","Res")
rownames(Storer_b) <- c("Fl","Or", "El","Ab","Res")
Tannehill_mat1 <-char2num(Tannehill_mat)
Tannehill <- getCov(Tannehill_mat1, diag=T)
colnames(Tannehill) <- c("Fl","Or", "El","Ab","Res")
rownames(Tannehill) <- c("Fl","Or", "El","Ab","Res")
Tisone_mat1 <-char2num(Tisone_mat)
Tisone <- getCov(Tisone_mat1, diag=T)
colnames(Tisone) <- c("Fl","Or", "El","Ab","Res")
rownames(Tisone) <- c("Fl","Or", "El","Ab","Res")
Trigani_mat1 <-char2num(Trigani_mat)
Trigani <- getCov(Trigani_mat1, diag=T)
colnames(Trigani) <- c("Fl","Or", "El","Ab","Res")
rownames(Trigani) <- c("Fl","Or", "El","Ab","Res")
Voss_mat1 <-char2num(Voss_mat)
Voss <- getCov(Voss_mat1, diag=T)
colnames(Voss) <- c("Fl","Or", "El","Ab","Res")
rownames(Voss) <- c("Fl","Or", "El","Ab","Res")
Warne_mat1 <-char2num(Warne_mat)
Warne <- getCov(Warne_mat1, diag=T)
colnames(Warne) <- c("Fl","Or", "El","Ab","Res")
rownames(Warne) <- c("Fl","Or", "El","Ab","Res")
Watson_mat1 <-char2num(Watson_mat)
Watson <- getCov(Watson_mat1, diag=T)
colnames(Watson) <- c("Fl","Or", "El","Ab","Res")
rownames(Watson) <- c("Fl","Or", "El","Ab","Res")
Yoon_mat1 <-char2num(Yoon_mat)
Yoon <- getCov(Yoon_mat1, diag=T)
colnames(Yoon) <- c("Fl","Or", "El","Ab","Res")
rownames(Yoon) <- c("Fl","Or", "El","Ab","Res")
Zhang_mat1 <-char2num(Zhang_mat)
Zhang <- getCov(Zhang_mat1, diag=T)
colnames(Zhang) <- c("Fl","Or", "El","Ab","Res")
rownames(Zhang) <- c("Fl","Or", "El","Ab","Res")
## New studies after the update in 2023
Acar_mat1 <-char2num(Acar_mat)
Acar <- getCov(Acar_mat1, diag=T)
colnames(Acar) <- c("Fl","Or", "El","Ab","Res")
rownames(Acar) <- c("Fl","Or", "El","Ab","Res")
Acaretal_mat1 <-char2num(Acaretal_mat)
Acaretal <- getCov(Acaretal_mat1, diag=T)
colnames(Acaretal) <- c("Fl","Or", "El","Ab","Res")
rownames(Acaretal) <- c("Fl","Or", "El","Ab","Res")
Balcia_mat1 <-char2num(Balci_mata)
Balcia <- getCov(Balcia_mat1, diag=T)
colnames(Balcia) <- c("Fl","Or", "El","Ab","Res")
rownames(Balcia) <- c("Fl","Or", "El","Ab","Res")
Balcib_mat1 <-char2num(Balci_matb)
Balcib <- getCov(Balcib_mat1, diag=T)
colnames(Balcib) <- c("Fl","Or", "El","Ab","Res")
rownames(Balcib) <- c("Fl","Or", "El","Ab","Res")
Gao_mat1 <-char2num(Gao_mat)
Gao <- getCov(Gao_mat1, diag=T)
colnames(Gao) <- c("Fl","Or", "El","Ab","Res")
rownames(Gao) <- c("Fl","Or", "El","Ab","Res")
Liu_mat1 <-char2num(Liu_mat)
Liu <- getCov(Liu_mat1, diag=T)
colnames(Liu) <- c("Fl","Or", "El","Ab","Res")
rownames(Liu) <- c("Fl","Or", "El","Ab","Res")
Wan_mat1 <-char2num(Wan_mat)
Wan <- getCov(Wan_mat1, diag=T)
colnames(Wan) <- c("Fl","Or", "El","Ab","Res")
rownames(Wan) <- c("Fl","Or", "El","Ab","Res")
Rubenstein_2020_a1 <-char2num(Rubenstein_2020_a)
Rubenstein_a <- getCov(Rubenstein_2020_a1, diag=T)
colnames(Rubenstein_a) <- c("Fl","Or", "El","Ab","Res")
rownames(Rubenstein_a) <- c("Fl","Or", "El","Ab","Res")
Rubenstein_2022_b1 <-char2num(Rubenstein_2022_b)
Rubenstein_b <- getCov(Rubenstein_2022_b1, diag=T)
colnames(Rubenstein_b) <- c("Fl","Or", "El","Ab","Res")
rownames(Rubenstein_b) <- c("Fl","Or", "El","Ab","Res")
#alphabetical order
data <- list(Acar, Acaretal,Auth, Balcia, Balcib, Barkul, Barkul2, Berman, Boynton, Callans,
Carter_a, Carter_b, Chi, Cho_F, Cho_M, Cockcroft,
Conway, Crawford, Digranes, Dufner, Fishkin, Forsyth, Gao, Garcia, Gollmar,
Hamlen, Hokanson, Houtz, Humble, Ibrahim,
Kiehn, Kim_1, Kim_2a, Kim_2b, Kim_2c, Kim_3a, Kim_3b,
Lew, Liu, Miranda, Morrison_a, Morrison_b, Morrison_c,
Nguyen, Rose, Rose_b, Roskos_Y, Roskos_O, Rubenstein_a, Rubenstein_b, Samuels, Shore, Stephens,
Storer_a, Storer_b, Tannehill, Tisone, Trigani,
Voss, Wan, Warne, Watson, Yoon, Zbarskaya, Zhang)
#Updated sample size counts
n <- c(477, 375, 30, 264, 105, 599, 147, 13, 62, 60, 24, 24, 203, 24, 35, 36, 25, 21, 17, 98, 116, 45, 319, 95, 128, 118, 1758,
42, 125, 99, 89, 500, 1000, 1000, 1000, 125, 137, 135, 1047, 12, 184, 122, 121, 187, 12, 19, 39, 31, 371,371,
51, 18, 84, 43, 46, 199, 24, 107, 120, 95, 432, 6, 163, 125, 1067)
#alphabetical order
names <- c("Acar", "Acaretal","Auth" , "Balcia", "Balcib", "Barkul" , "Barkul2" , "Berman" , "Boynton" , "Callans" ,
"Carter_a" , "Carter_b" , "Chi" , "Cho_F" , "Cho_M" , "Cockcroft" ,
"Conway" , "Crawford",
"Digranes" , "Dufner" , "Fishkin" , "Forsyth" , "Gao", "Garcia" , "Gollmar" ,
"Hamlen" , "Hokanson" , "Houtz" , "Humble" , "Ibrahim",
"Kiehn" , "Kim_1" , "Kim_2a" , "Kim_2b" , "Kim_2c" , "Kim_3a" , "Kim_3b" ,
"Lew" , "Liu", "Miranda" , "Morrison_a" , "Morrison_b" , "Morrison_c" ,
"Nguyen" , "Rose" , "Rose_b" , "Roskos_Y" , "Roskos_O" , "Rubenstein_a","Rubenstein_b", "Samuels" , "Shore" , "Stephens" ,
"Storer_a" , "Storer_b" , "Tannehill" , "Tisone" , "Trigani", "Voss" ,"Wan", "Warne" , "Watson" , "Yoon" , "Zbarskaya" , "Zhang")
#alphabetical order
study.names <- c("Acar", "Acaretal","Auth" , "Balcia", "Balcib", "Barkul" , "Barkul2" , "Berman" , "Boynton" , "Callans" ,
"Carter_a" , "Carter_b" , "Chi" , "Cho_F" , "Cho_M" , "Cockcroft" ,
"Conway" , "Crawford",
"Digranes" , "Dufner" , "Fishkin" , "Forsyth" , "Gao", "Garcia" , "Gollmar" ,
"Hamlen" , "Hokanson" , "Houtz" , "Humble" , "Ibrahim",
"Kiehn" , "Kim_1" , "Kim_2a" , "Kim_2b" , "Kim_2c" , "Kim_3a" , "Kim_3b" ,
"Lew" , "Liu", "Miranda" , "Morrison_a" , "Morrison_b" , "Morrison_c" ,
"Nguyen" , "Rose" , "Rose_b" , "Roskos_Y" , "Roskos_O" , "Rubenstein_a","Rubenstein_b", "Samuels" , "Shore" , "Stephens" ,
"Storer_a" , "Storer_b" , "Tannehill" , "Tisone" , "Trigani", "Voss" ,"Wan", "Warne" , "Watson" , "Yoon" , "Zbarskaya" , "Zhang")
names(data) <- study.names
## Possible moderators
## Age group
## Code: 1 = Adults, 0 = Kindergarten up to High/Middle school
adults <- c(1,0,1,0,0,1,1,1,1,1,0,0,0,1,1,0,1,0,0,0,0,1,1,0,0,0,0,1,0,1,0,0,
0,0,0,0,0,0,0,1,0,0,0,1,0,0,1,1,0,0,1,0,0,0,0,0,0,1,0,1,1,1,0,1,0)
## Evidence against discriminant validity
## Coding: 1 = evidence present, 0 = evidence not present/reported
validity <- c(1,1,0,0,1,0,1,0,1,0,1,1,0,1,1,1,0,0,1,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,
0,0,0,0,0,1,0,0,0,0,1,1,0,0,0,1,0,1,0,0,0,0,1,0,0,0,0,1,0,0,0)
## Test forms
## Subset the data
formsAB <- c("A","A",NA,"Both","Both","A","A","A","Both","A","A","A","A",NA,NA,"B","A","A","A","B","A","Both",NA,"B","A","A","A","B","A","A","A","A","A","A","A","A",
"A",NA,"A","A","A","A","A","A","A","A","B","B","A","B","A","A","A","A","A","A","A","A","A",NA,"A","B","A","A","A")
forms <- as.vector(as.numeric(which(formsAB %in% c(NA, "Both")))) # which gives the positions of codes 1
## Standardized test scores
## Subset the data
scoring <- c(0,0,1,0,0,0,0,NA,0,1,0,0,0,0,0,0,1,1,0,0,0,1,1,1,1,1,0,0,1,1,1,1,0,0,0,1,1,1,1,0,
NA,NA,NA,1,0,0,1,1,0,0,1,0,1,1,1,1,0,1,1,NA,0,0,1,1,0)
scores <- as.vector(as.numeric(which(scoring %in% NA))) # which gives the positions of codes 1
head(data, 5)
## $Acar
## Fl Or El Ab Res
## Fl 1.000 0.650 0.188 0.338 0.529
## Or 0.650 1.000 0.274 0.409 0.477
## El 0.188 0.274 1.000 0.363 0.413
## Ab 0.338 0.409 0.363 1.000 0.305
## Res 0.529 0.477 0.413 0.305 1.000
##
## $Acaretal
## Fl Or El Ab Res
## Fl 1.000 0.763 0.089 0.294 0.567
## Or 0.763 1.000 0.210 0.367 0.540
## El 0.089 0.210 1.000 0.469 0.277
## Ab 0.294 0.367 0.469 1.000 0.318
## Res 0.567 0.540 0.277 0.318 1.000
##
## $Auth
## Fl Or El Ab Res
## Fl 1.00 0.54 0.11 0.08 0.36
## Or 0.54 1.00 0.39 0.18 0.25
## El 0.11 0.39 1.00 0.32 0.15
## Ab 0.08 0.18 0.32 1.00 -0.07
## Res 0.36 0.25 0.15 -0.07 1.00
##
## $Balcia
## Fl Or El Ab Res
## Fl 1.000 0.292 0.000 0.176 -0.117
## Or 0.292 1.000 0.221 0.148 0.154
## El 0.000 0.221 1.000 0.304 0.035
## Ab 0.176 0.148 0.304 1.000 0.047
## Res -0.117 0.154 0.035 0.047 1.000
##
## $Balcib
## Fl Or El Ab Res
## Fl 1.000 0.430 0.116 0.267 -0.190
## Or 0.430 1.000 0.166 0.225 0.016
## El 0.116 0.166 1.000 0.363 -0.128
## Ab 0.267 0.225 0.363 1.000 -0.107
## Res -0.190 0.016 -0.128 -0.107 1.000
## Check for positive definiteness
is.pd(data)
## Acar Acaretal Auth Balcia Balcib Barkul
## TRUE TRUE TRUE TRUE TRUE TRUE
## Barkul2 Berman Boynton Callans Carter_a Carter_b
## NA TRUE TRUE TRUE TRUE TRUE
## Chi Cho_F Cho_M Cockcroft Conway Crawford
## TRUE TRUE TRUE TRUE TRUE TRUE
## Digranes Dufner Fishkin Forsyth Gao Garcia
## TRUE TRUE TRUE TRUE TRUE TRUE
## Gollmar Hamlen Hokanson Houtz Humble Ibrahim
## TRUE TRUE TRUE TRUE TRUE TRUE
## Kiehn Kim_1 Kim_2a Kim_2b Kim_2c Kim_3a
## TRUE TRUE TRUE TRUE TRUE TRUE
## Kim_3b Lew Liu Miranda Morrison_a Morrison_b
## TRUE TRUE TRUE TRUE TRUE TRUE
## Morrison_c Nguyen Rose Rose_b Roskos_Y Roskos_O
## TRUE TRUE TRUE TRUE TRUE TRUE
## Rubenstein_a Rubenstein_b Samuels Shore Stephens Storer_a
## TRUE TRUE TRUE TRUE TRUE TRUE
## Storer_b Tannehill Tisone Trigani Voss Wan
## TRUE TRUE TRUE TRUE TRUE TRUE
## Warne Watson Yoon Zbarskaya Zhang
## TRUE TRUE TRUE TRUE TRUE
## Simplify the data structure
TTCT <- data
TTCT.n <- n
# Overview of missing data
pattern.na(TTCT, show.na = TRUE)
## Fl Or El Ab Res
## Fl 0 0 7 6 8
## Or 0 0 7 6 8
## El 7 7 7 7 10
## Ab 6 6 7 6 9
## Res 8 8 10 9 8
# Overview of complete data
pattern.na(TTCT, show.na = FALSE)
## Fl Or El Ab Res
## Fl 65 65 58 59 57
## Or 65 65 58 59 57
## El 58 58 58 58 55
## Ab 59 59 58 59 56
## Res 57 57 55 56 57
# Which correlation matrices have missing values?
# Search in the pattern matrices for TRUE (i.e., NAs present)
# Create the relevant objects
x <- "TRUE"
y <- c(rep(NA, length(TTCT)))
for (i in 1:length(TTCT)) {
## Check missingness
y[i] <- x %in% as.matrix(is.na(TTCT[[i]]))
}
y
## [1] FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE TRUE FALSE FALSE FALSE
## [13] FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE FALSE
## [25] FALSE TRUE FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE FALSE FALSE
## [37] FALSE TRUE FALSE FALSE TRUE TRUE TRUE FALSE FALSE FALSE FALSE FALSE
## [49] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [61] FALSE TRUE FALSE FALSE FALSE
table(y)
## y
## FALSE TRUE
## 55 10
## Identify the correlation matrices with missing values
missexclude <- as.vector(which(y %in% x))
## Exclude the correlation matrices with missing values
TTCT <- TTCT[-missexclude]
TTCT.n <- TTCT.n[-missexclude]
names.studies <- names[-missexclude]
names.studid <- study.names[-missexclude]
mod.adults <- adults[-missexclude]
mod.validity <- validity[-missexclude]
mod.forms <- formsAB[-missexclude]
mod.scores <- scoring[-missexclude]
## Combine everything in an object
TTCT1 <- list(data = TTCT, n = TTCT.n)
TTCT1
## $data
## $data$Acar
## Fl Or El Ab Res
## Fl 1.000 0.650 0.188 0.338 0.529
## Or 0.650 1.000 0.274 0.409 0.477
## El 0.188 0.274 1.000 0.363 0.413
## Ab 0.338 0.409 0.363 1.000 0.305
## Res 0.529 0.477 0.413 0.305 1.000
##
## $data$Acaretal
## Fl Or El Ab Res
## Fl 1.000 0.763 0.089 0.294 0.567
## Or 0.763 1.000 0.210 0.367 0.540
## El 0.089 0.210 1.000 0.469 0.277
## Ab 0.294 0.367 0.469 1.000 0.318
## Res 0.567 0.540 0.277 0.318 1.000
##
## $data$Auth
## Fl Or El Ab Res
## Fl 1.00 0.54 0.11 0.08 0.36
## Or 0.54 1.00 0.39 0.18 0.25
## El 0.11 0.39 1.00 0.32 0.15
## Ab 0.08 0.18 0.32 1.00 -0.07
## Res 0.36 0.25 0.15 -0.07 1.00
##
## $data$Balcia
## Fl Or El Ab Res
## Fl 1.000 0.292 0.000 0.176 -0.117
## Or 0.292 1.000 0.221 0.148 0.154
## El 0.000 0.221 1.000 0.304 0.035
## Ab 0.176 0.148 0.304 1.000 0.047
## Res -0.117 0.154 0.035 0.047 1.000
##
## $data$Balcib
## Fl Or El Ab Res
## Fl 1.000 0.430 0.116 0.267 -0.190
## Or 0.430 1.000 0.166 0.225 0.016
## El 0.116 0.166 1.000 0.363 -0.128
## Ab 0.267 0.225 0.363 1.000 -0.107
## Res -0.190 0.016 -0.128 -0.107 1.000
##
## $data$Barkul
## Fl Or El Ab Res
## Fl 1.00 0.95 0.47 0.86 0.47
## Or 0.95 1.00 0.56 0.84 0.49
## El 0.47 0.56 1.00 0.56 0.38
## Ab 0.86 0.84 0.56 1.00 0.60
## Res 0.47 0.49 0.38 0.60 1.00
##
## $data$Berman
## Fl Or El Ab Res
## Fl 1.000 0.39 0.14 -0.38 0.004
## Or 0.390 1.00 -0.23 0.14 -0.290
## El 0.140 -0.23 1.00 0.05 0.800
## Ab -0.380 0.14 0.05 1.00 0.250
## Res 0.004 -0.29 0.80 0.25 1.000
##
## $data$Callans
## Fl Or El Ab Res
## Fl 1.00 0.78 0.09 0.26 0.51
## Or 0.78 1.00 -0.01 0.26 0.43
## El 0.09 -0.01 1.00 0.27 0.42
## Ab 0.26 0.26 0.27 1.00 0.38
## Res 0.51 0.43 0.42 0.38 1.00
##
## $data$Carter_a
## Fl Or El Ab Res
## Fl 1.00 0.86 0.31 0.05 0.81
## Or 0.86 1.00 0.28 0.05 0.72
## El 0.31 0.28 1.00 0.54 0.49
## Ab 0.05 0.05 0.54 1.00 0.21
## Res 0.81 0.72 0.49 0.21 1.00
##
## $data$Carter_b
## Fl Or El Ab Res
## Fl 1.00 0.82 0.62 0.51 0.68
## Or 0.82 1.00 0.39 0.40 0.60
## El 0.62 0.39 1.00 0.28 0.40
## Ab 0.51 0.40 0.28 1.00 0.33
## Res 0.68 0.60 0.40 0.33 1.00
##
## $data$Chi
## Fl Or Ab El Res
## Fl 1.000 0.433 -0.02 0.18 -0.19
## Or 0.433 1.000 0.42 0.37 0.40
## Ab -0.020 0.420 1.00 0.42 0.54
## El 0.180 0.370 0.42 1.00 0.45
## Res -0.190 0.400 0.54 0.45 1.00
##
## $data$Cho_F
## Fl Or Ab El Res
## Fl 1.00 0.61 0.42 0.32 0.69
## Or 0.61 1.00 0.43 0.21 0.33
## Ab 0.42 0.43 1.00 0.58 0.63
## El 0.32 0.21 0.58 1.00 0.54
## Res 0.69 0.33 0.63 0.54 1.00
##
## $data$Cho_M
## Fl Or Ab El Res
## Fl 1.00 0.59 0.26 0.14 0.82
## Or 0.59 1.00 0.02 0.31 0.69
## Ab 0.26 0.02 1.00 0.36 0.25
## El 0.14 0.31 0.36 1.00 0.24
## Res 0.82 0.69 0.25 0.24 1.00
##
## $data$Cockcroft
## Fl Or Ab El Res
## Fl 1.00 0.29 0.42 0.24 0.18
## Or 0.29 1.00 0.12 0.65 0.31
## Ab 0.42 0.12 1.00 0.31 0.31
## El 0.24 0.65 0.31 1.00 0.46
## Res 0.18 0.31 0.31 0.46 1.00
##
## $data$Conway
## Fl Or El Ab Res
## Fl 1.00 0.82 0.45 0.56 0.50
## Or 0.82 1.00 0.47 0.56 0.43
## El 0.45 0.47 1.00 0.68 0.49
## Ab 0.56 0.56 0.68 1.00 0.65
## Res 0.50 0.43 0.49 0.65 1.00
##
## $data$Crawford
## Fl Or El Ab Res
## Fl 1.00 0.94 0.38 0.37 0.67
## Or 0.94 1.00 0.44 0.48 0.72
## El 0.38 0.44 1.00 0.38 0.65
## Ab 0.37 0.48 0.38 1.00 0.40
## Res 0.67 0.72 0.65 0.40 1.00
##
## $data$Digranes
## Fl Or El Ab Res
## Fl 1.00 0.76 0.17 0.80 0.81
## Or 0.76 1.00 0.45 0.71 0.79
## El 0.17 0.45 1.00 0.09 0.37
## Ab 0.80 0.71 0.09 1.00 0.74
## Res 0.81 0.79 0.37 0.74 1.00
##
## $data$Fishkin
## Fl Or El Ab Res
## Fl 1.00 0.60 0.00 0.13 0.19
## Or 0.60 1.00 -0.03 0.11 0.26
## El 0.00 -0.03 1.00 0.11 0.01
## Ab 0.13 0.11 0.11 1.00 0.09
## Res 0.19 0.26 0.01 0.09 1.00
##
## $data$Forsyth
## Fl Or El Ab Res
## Fl 1.00 0.91 0.56 0.35 0.82
## Or 0.91 1.00 0.49 0.40 0.77
## El 0.56 0.49 1.00 0.50 0.62
## Ab 0.35 0.40 0.50 1.00 0.33
## Res 0.82 0.77 0.62 0.33 1.00
##
## $data$Gao
## Fl Or El Ab Res
## Fl 1.00 0.31 0.28 0.39 0.28
## Or 0.31 1.00 0.34 0.41 0.17
## El 0.28 0.34 1.00 0.25 0.26
## Ab 0.39 0.41 0.25 1.00 0.31
## Res 0.28 0.17 0.26 0.31 1.00
##
## $data$Garcia
## Fl Or El Ab Res
## Fl 1.000 0.626 0.392 0.435 0.416
## Or 0.626 1.000 0.450 0.387 0.525
## El 0.392 0.450 1.000 0.495 0.320
## Ab 0.435 0.387 0.495 1.000 0.567
## Res 0.416 0.525 0.320 0.567 1.000
##
## $data$Gollmar
## Fl Or El Ab Res
## Fl 1.000 0.672 -0.260 -0.130 0.188
## Or 0.672 1.000 0.019 0.241 0.217
## El -0.260 0.019 1.000 0.377 0.220
## Ab -0.130 0.241 0.377 1.000 0.296
## Res 0.188 0.217 0.220 0.296 1.000
##
## $data$Hokanson
## Fl Or El Ab Res
## Fl 1.00 0.79 0.14 0.32 0.48
## Or 0.79 1.00 0.28 0.44 0.45
## El 0.14 0.28 1.00 0.48 0.36
## Ab 0.32 0.44 0.48 1.00 0.36
## Res 0.48 0.45 0.36 0.36 1.00
##
## $data$Houtz
## Fl Or Ab El Res
## Fl 1.00 0.59 0.27 0.49 0.50
## Or 0.59 1.00 0.16 0.27 0.34
## Ab 0.27 0.16 1.00 0.22 0.46
## El 0.49 0.27 0.22 1.00 0.37
## Res 0.50 0.34 0.46 0.37 1.00
##
## $data$Humble
## Fl Or El Ab Res
## Fl 1.00 0.83 0.22 0.44 0.34
## Or 0.83 1.00 0.28 0.38 0.25
## El 0.22 0.28 1.00 0.06 0.07
## Ab 0.44 0.38 0.06 1.00 0.37
## Res 0.34 0.25 0.07 0.37 1.00
##
## $data$Ibrahim
## Fl Or Ab El Res
## Fl 1.000 0.611 0.524 0.230 0.460
## Or 0.611 1.000 0.120 0.246 0.485
## Ab 0.524 0.120 1.000 0.267 0.155
## El 0.230 0.246 0.267 1.000 0.484
## Res 0.460 0.485 0.155 0.484 1.000
##
## $data$Kim_1
## Fl Or Ab El Res
## Fl 1.000 0.844 0.351 0.196 0.666
## Or 0.844 1.000 0.332 0.209 0.563
## Ab 0.351 0.332 1.000 0.428 0.212
## El 0.196 0.209 0.428 1.000 0.443
## Res 0.666 0.563 0.212 0.443 1.000
##
## $data$Kim_2a
## Fl Or Ab El Res
## Fl 1.00 0.84 0.45 0.39 0.65
## Or 0.84 1.00 0.49 0.38 0.65
## Ab 0.45 0.49 1.00 0.49 0.34
## El 0.39 0.38 0.49 1.00 0.51
## Res 0.65 0.65 0.34 0.51 1.00
##
## $data$Kim_2b
## Fl Or Ab El Res
## Fl 1.00 0.79 0.08 0.14 0.47
## Or 0.79 1.00 0.15 0.15 0.48
## Ab 0.08 0.15 1.00 0.30 0.17
## El 0.14 0.15 0.30 1.00 0.25
## Res 0.47 0.48 0.17 0.25 1.00
##
## $data$Kim_2c
## Fl Or Ab El Res
## Fl 1.00 0.86 0.31 0.22 0.66
## Or 0.86 1.00 0.32 0.25 0.57
## Ab 0.31 0.32 1.00 0.41 0.20
## El 0.22 0.25 0.41 1.00 0.40
## Res 0.66 0.57 0.20 0.40 1.00
##
## $data$Kim_3a
## Fl Or Ab El Res
## Fl 1.00 0.46 -0.28 0.10 -0.28
## Or 0.46 1.00 0.24 0.40 0.12
## Ab -0.28 0.24 1.00 0.51 0.60
## El 0.10 0.40 0.51 1.00 0.66
## Res -0.28 0.12 0.60 0.66 1.00
##
## $data$Kim_3b
## Fl Or Ab El Res
## Fl 1.00 0.40 -0.27 0.08 -0.22
## Or 0.40 1.00 0.23 0.34 0.17
## Ab -0.27 0.23 1.00 0.50 0.64
## El 0.08 0.34 0.50 1.00 0.72
## Res -0.22 0.17 0.64 0.72 1.00
##
## $data$Liu
## Fl Or El Ab Res
## Fl 1.00 0.94 0.32 0.49 0.41
## Or 0.94 1.00 0.32 0.48 0.39
## El 0.32 0.32 1.00 0.66 0.62
## Ab 0.49 0.48 0.66 1.00 0.67
## Res 0.41 0.39 0.62 0.67 1.00
##
## $data$Miranda
## Fl Or El Ab Res
## Fl 1.00 0.49 0.02 -0.25 0.41
## Or 0.49 1.00 0.11 -0.30 0.20
## El 0.02 0.11 1.00 -0.31 0.14
## Ab -0.25 -0.30 -0.31 1.00 -0.29
## Res 0.41 0.20 0.14 -0.29 1.00
##
## $data$Nguyen
## Fl Or El Ab Res
## Fl 1.00 0.75 0.11 0.17 0.38
## Or 0.75 1.00 0.09 0.10 0.34
## El 0.11 0.09 1.00 0.15 0.13
## Ab 0.17 0.10 0.15 1.00 0.03
## Res 0.38 0.34 0.13 0.03 1.00
##
## $data$Rose
## Fl Or El Ab Res
## Fl 1.00 0.81 0.07 0.66 -0.05
## Or 0.81 1.00 0.27 0.62 -0.06
## El 0.07 0.27 1.00 0.57 -0.19
## Ab 0.66 0.62 0.57 1.00 -0.12
## Res -0.05 -0.06 -0.19 -0.12 1.00
##
## $data$Rose_b
## Fl Or El Ab Res
## Fl 1.00 0.67 0.05 0.56 0.34
## Or 0.67 1.00 0.13 0.16 0.12
## El 0.05 0.13 1.00 -0.30 0.43
## Ab 0.56 0.16 -0.30 1.00 0.19
## Res 0.34 0.12 0.43 0.19 1.00
##
## $data$Roskos_Y
## Fl Or Ab El Res
## Fl 1.00 0.26 0.15 0.37 0.53
## Or 0.26 1.00 0.08 0.47 0.31
## Ab 0.15 0.08 1.00 0.20 0.47
## El 0.37 0.47 0.20 1.00 0.37
## Res 0.53 0.31 0.47 0.37 1.00
##
## $data$Roskos_O
## Fl Or Ab El Res
## Fl 1.00 0.16 -0.06 0.06 0.14
## Or 0.16 1.00 -0.02 0.25 0.29
## Ab -0.06 -0.02 1.00 0.04 0.36
## El 0.06 0.25 0.04 1.00 0.47
## Res 0.14 0.29 0.36 0.47 1.00
##
## $data$Rubenstein_a
## Fl Or El Ab Res
## Fl 1.000 0.828 0.331 0.470 0.681
## Or 0.828 1.000 0.321 0.550 0.640
## El 0.331 0.321 1.000 0.450 0.443
## Ab 0.470 0.550 0.450 1.000 0.526
## Res 0.681 0.640 0.443 0.526 1.000
##
## $data$Rubenstein_b
## Fl Or El Ab Res
## Fl 1.000 0.629 0.238 0.402 0.313
## Or 0.629 1.000 0.351 0.509 0.394
## El 0.238 0.351 1.000 0.380 0.385
## Ab 0.402 0.509 0.380 1.000 0.305
## Res 0.313 0.394 0.385 0.305 1.000
##
## $data$Samuels
## Fl Or El Ab Res
## Fl 1.00 0.75 -0.11 0.10 -0.16
## Or 0.75 1.00 0.02 0.24 -0.06
## El -0.11 0.02 1.00 0.48 0.07
## Ab 0.10 0.24 0.48 1.00 0.24
## Res -0.16 -0.06 0.07 0.24 1.00
##
## $data$Shore
## Fl Or El Ab Res
## Fl 1.00 0.26 -0.01 -0.12 -0.29
## Or 0.26 1.00 0.33 0.70 0.12
## El -0.01 0.33 1.00 0.30 0.54
## Ab -0.12 0.70 0.30 1.00 0.34
## Res -0.29 0.12 0.54 0.34 1.00
##
## $data$Stephens
## Fl Or El Ab Res
## Fl 1.00 0.86 0.17 0.33 0.65
## Or 0.86 1.00 0.16 0.30 0.60
## El 0.17 0.16 1.00 0.12 0.30
## Ab 0.33 0.30 0.12 1.00 0.31
## Res 0.65 0.60 0.30 0.31 1.00
##
## $data$Storer_a
## Fl Or El Ab Res
## Fl 1.00 0.81 0.07 0.66 -0.05
## Or 0.81 1.00 0.27 0.62 -0.06
## El 0.07 0.27 1.00 0.57 -0.19
## Ab 0.66 0.62 0.57 1.00 -0.12
## Res -0.05 -0.06 -0.19 -0.12 1.00
##
## $data$Storer_b
## Fl Or El Ab Res
## Fl 1.00 0.73 0.23 0.43 0.57
## Or 0.73 1.00 0.20 0.55 0.48
## El 0.23 0.20 1.00 0.29 0.40
## Ab 0.43 0.55 0.29 1.00 0.25
## Res 0.57 0.48 0.40 0.25 1.00
##
## $data$Tannehill
## Fl Or El Ab Res
## Fl 1.00 0.84 0.35 0.28 0.35
## Or 0.84 1.00 0.41 0.36 0.33
## El 0.35 0.41 1.00 0.38 0.39
## Ab 0.28 0.36 0.38 1.00 0.41
## Res 0.35 0.33 0.39 0.41 1.00
##
## $data$Tisone
## Fl Or El Ab Res
## Fl 1.00 0.68 -0.03 0.15 0.13
## Or 0.68 1.00 -0.12 0.26 0.35
## El -0.03 -0.12 1.00 0.30 0.11
## Ab 0.15 0.26 0.30 1.00 0.53
## Res 0.13 0.35 0.11 0.53 1.00
##
## $data$Trigani
## Fl Or El Ab Res
## Fl 1.00 0.72 0.28 0.17 0.69
## Or 0.72 1.00 0.24 0.26 0.47
## El 0.28 0.24 1.00 0.37 0.52
## Ab 0.17 0.26 0.37 1.00 0.16
## Res 0.69 0.47 0.52 0.16 1.00
##
## $data$Voss
## Fl Or El Ab Res
## Fl 1.00 0.71 0.43 0.38 0.65
## Or 0.71 1.00 0.51 0.44 0.79
## El 0.43 0.51 1.00 0.53 0.59
## Ab 0.38 0.44 0.53 1.00 0.42
## Res 0.65 0.79 0.59 0.42 1.00
##
## $data$Wan
## Fl Or El Ab Res
## Fl 1.00 0.27 0.24 0.17 0.19
## Or 0.27 1.00 0.35 0.19 0.14
## El 0.24 0.35 1.00 0.27 0.12
## Ab 0.17 0.19 0.27 1.00 0.35
## Res 0.19 0.14 0.12 0.35 1.00
##
## $data$Warne
## Fl Or El Ab Res
## Fl 1.00 0.74 0.40 0.35 0.63
## Or 0.74 1.00 0.37 0.37 0.50
## El 0.40 0.37 1.00 0.43 0.50
## Ab 0.35 0.37 0.43 1.00 0.26
## Res 0.63 0.50 0.50 0.26 1.00
##
## $data$Yoon
## Fl Or El Ab Res
## Fl 1.00 0.73 -0.16 0.08 0.09
## Or 0.73 1.00 0.08 0.29 0.28
## El -0.16 0.08 1.00 0.47 0.53
## Ab 0.08 0.29 0.47 1.00 0.66
## Res 0.09 0.28 0.53 0.66 1.00
##
## $data$Zbarskaya
## Fl Or El Ab Res
## Fl 1.000 0.614 0.008 0.168 0.189
## Or 0.614 1.000 0.135 0.327 0.153
## El 0.008 0.135 1.000 0.504 0.225
## Ab 0.168 0.327 0.504 1.000 0.442
## Res 0.189 0.153 0.225 0.442 1.000
##
## $data$Zhang
## Fl Or El Ab Res
## Fl 1.00 0.78 0.09 0.25 0.83
## Or 0.78 1.00 0.15 0.24 0.70
## El 0.09 0.15 1.00 0.33 0.06
## Ab 0.25 0.24 0.33 1.00 0.21
## Res 0.83 0.70 0.06 0.21 1.00
##
##
## $n
## [1] 477 375 30 264 105 599 13 60 24 24 203 24 35 36 25
## [16] 21 17 116 45 319 95 128 1758 42 125 99 500 1000 1000 1000
## [31] 125 137 1047 12 187 12 19 39 31 371 371 51 18 84 43
## [46] 46 199 24 107 120 95 432 163 125 1067
Parameter-based MASEM comprises two steps: (1) Model-based generation of the relevant effect sizes and their sampling (co-)variances; and (2) Meta-analysis of the effect sizes.
In this step, we specify the analytic models for reliability
estimation. The extant literature indicated that several models may
describe the structure of the TTCT: (a) single-factor model with a
general TTCT factor (gTTCT); (b) two-factor model with a
factor representing innovativeness (INNOV) and a factor
describing adaptability (ADAPT); and (c) the two-factor
model from (b) with a cross-loading of the indicator Res.
In the following section, we specify these models and define the
reliability estimates.
## Model 1
## Single-factor model
SingleFactorModel <- " # Measurement Model
gCT =~ L1*Fl + L2*Or + L3*El + L4*Ab + L5*Res
# Residual variances
Fl ~~ R1*Fl
Or ~~ R2*Or
El ~~ R3*El
Ab ~~ R4*Ab
Res ~~ R5*Res
# Factor variances fixed to 1
gCT ~~ 1*gCT
# Additional constraints
R1 > 0
R2 > 0
R3 > 0
R4 > 0
R5 > 0
"
## Model 4
## Two-factor model with correlated traits ADAPT and INNOV and Res assigned to ADAPT
TwoFactorModel <- " # Measurement Model
Innov =~ L1*Fl + L2*Or
Adapt =~ L3*El + L4*Ab + L5*Res
# Residual variances
Fl ~~ R1*Fl
Or ~~ R2*Or
El ~~ R3*El
Ab ~~ R4*Ab
Res ~~ R5*Res
# Factor variances fixed to 1
Adapt ~~ 1*Adapt
Innov ~~ 1*Innov
# Factor correlation
Adapt ~~ fcorr*Innov
# Reliability coefficients
SREL1 := ((L1+L2)^2)/((L1+L2)^2 +
R1+R2)
SREL2 := ((L3+L4+L5)^2)/((L3+L4+L5)^2 +
R3+R4+R5)
# Composite reliability by Fu et al. (2022)
SRELCR := ((L1+L2)^2+(L3+L4+L5)^2+2*fcorr*(L1+L2)*(L3+L4+L5))/
((L1+L2)^2+(L3+L4+L5)^2+2*fcorr*(L1+L2)*(L3+L4+L5) +
R1+R2+R3+R4+R5)
# Additional constraints
R1 > 0
R2 > 0
R3 > 0
R4 > 0
R5 > 0
"
## Model 2
## Two-factor model with correlated traits ADAPT and INNOV and Res assigned to Innov
TwoFactorModelB <- " # Measurement Model
Innov =~ L1*Fl + L2*Or + L5*Res
Adapt =~ L3*El + L4*Ab
# Residual variances
Fl ~~ R1*Fl
Or ~~ R2*Or
El ~~ R3*El
Ab ~~ R4*Ab
Res ~~ R5*Res
# Factor variances fixed to 1
Adapt ~~ 1*Adapt
Innov ~~ 1*Innov
# Factor correlation
Adapt ~~ fcorr*Innov
# Reliability coefficients
SREL1 := ((L1+L2+L5)^2)/((L1+L2+L5)^2 +
R1+R2+R5)
SREL2 := ((L3+L4)^2)/((L3+L4)^2 +
R3+R4)
# Composite reliability by Fu et al. (2022)
SRELCR := ((L1+L2+L5)^2+(L3+L4)^2+2*fcorr*(L1+L2+L5)*(L3+L4))/
((L1+L2+L5)^2+(L3+L4)^2+2*fcorr*(L1+L2+L5)*(L3+L4) +
R1+R2+R3+R4+R5)
# Additional constraints
R1 > 0
R2 > 0
R3 > 0
R4 > 0
R5 > 0
"
## Model 3
## Two-factor model with correlated traits ADAPT and INNOV and a cross-loading of RES
TwoFactorModelC <- " # Measurement Model
Innov =~ L1*Fl + L2*Or + CL*Res
Adapt =~ L3*El + L4*Ab + L5*Res
# Residual variances
Fl ~~ R1*Fl
Or ~~ R2*Or
El ~~ R3*El
Ab ~~ R4*Ab
Res ~~ R5*Res
# Factor variances fixed to 1
Adapt ~~ 1*Adapt
Innov ~~ 1*Innov
# Factor correlation
Adapt ~~ fcorr*Innov
# Reliability coefficients
SREL1C := ((L1+L2+CL)^2)/((L1+L2+CL)^2 +
R1+R2+R5)
SREL2C := ((L3+L4+L5)^2)/((L3+L4+L5)^2 +
R3+R4+R5)
# Composite reliability by Fu et al. (2022)
SRELCRC := ((L1+L2+CL)^2+(L3+L4+L5)^2 +
2*fcorr*(L1+L2+CL)*(L3+L4+L5))/
((L1+L2+CL)^2+(L3+L4+L5)^2 +
2*fcorr*(L1+L2+CL)*(L3+L4+L5) +
R1+R2+R3+R4+R5)
# Additional constraints
R1 > 0
R2 > 0
R3 > 0
R4 > 0
R5 > 0
"
## Define a function to run the SEM in laavan and extract the
## model parameters
tra_study_lavaan <- function(id, data, para_names=NULL, model, ...) {
cor_i <- data$data[[id]]
n_i <- data$n[[id]]
fit_i <- sem(model=model, std.lv = T, sample.cov=cor_i, sample.nobs=n_i, ...)
results <- list()
coefs <- standardizedSolution(fit_i)$est.std[1:5]
vcoefs <- vcov(fit_i)[1:5,1:5]
if (is.null(para_names)) para_names <- names(coefs)
names(coefs) <- para_names
colnames(vcoefs) <- rownames(vcoefs) <- para_names
results$coefs <- coefs
results$vcoefs <- vcoefs
results$fit <- fit_i
results
}
## Specify some more parameters
k <- length(TTCT1$data)
para_names <- c("L1", "L2", "L3", "L4", "L5")
var_names <- c("Fl", "Or", "El", "Ab", "Res")
## Model 1
## Single-factor model
## Model estimation
sfm.fit.all <- lapply(1:k, FUN = tra_study_lavaan,
data = TTCT1,
para_names = para_names,
model = SingleFactorModel,
estimator = "ML",
fixed.x = FALSE)
head(sfm.fit.all, 5)
## [[1]]
## [[1]]$coefs
## L1 L2 L3 L4 L5
## 0.7806757 0.7970722 0.3850632 0.4928744 0.6544310
##
## [[1]]$vcoefs
## L1 L2 L3 L4 L5
## L1 0.0018747607 0.0004414647 0.0002888422 0.0003672497 0.0004744853
## L2 0.0004414647 0.0018586283 0.0002859710 0.0003626627 0.0004635303
## L3 0.0002888422 0.0002859710 0.0023570479 0.0001926207 0.0002535575
## L4 0.0003672497 0.0003626627 0.0001926207 0.0022354054 0.0003235835
## L5 0.0004744853 0.0004635303 0.0002535575 0.0003235835 0.0020128976
##
## [[1]]$fit
## lavaan 0.6.16 ended normally after 14 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 10
## Number of inequality constraints 5
##
## Number of observations 477
##
## Model Test User Model:
##
## Test statistic 83.333
## Degrees of freedom 5
## P-value (Chi-square) 0.000
##
##
## [[2]]
## [[2]]$coefs
## L1 L2 L3 L4 L5
## 0.8539468 0.8834395 0.2320228 0.4090740 0.6433003
##
## [[2]]$vcoefs
## L1 L2 L3 L4 L5
## L1 0.0020687540 0.0007157960 0.0002623920 0.0004625366 0.0007268287
## L2 0.0007157960 0.0020239678 0.0002524888 0.0004436589 0.0006875786
## L3 0.0002623920 0.0002524888 0.0029423964 0.0001260761 0.0001982261
## L4 0.0004625366 0.0004436589 0.0001260761 0.0027619526 0.0003494688
## L5 0.0007268287 0.0006875786 0.0001982261 0.0003494688 0.0023771537
##
## [[2]]$fit
## lavaan 0.6.16 ended normally after 15 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 10
## Number of inequality constraints 5
##
## Number of observations 375
##
## Model Test User Model:
##
## Test statistic 108.835
## Degrees of freedom 5
## P-value (Chi-square) 0.000
##
##
## [[3]]
## [[3]]$coefs
## L1 L2 L3 L4 L5
## 0.5976890 0.8960524 0.4174755 0.2081323 0.3135450
##
## [[3]]$vcoefs
## L1 L2 L3 L4 L5
## L1 0.042572394 -0.011264727 0.010409972 0.004974506 0.007613374
## L2 -0.011264727 0.054008776 -0.005773406 -0.002480583 -0.003957476
## L3 0.010409972 -0.005773406 0.039023005 0.003161825 0.004834038
## L4 0.004974506 -0.002480583 0.003161825 0.038628760 0.002318153
## L5 0.007613374 -0.003957476 0.004834038 0.002318153 0.038679852
##
## [[3]]$fit
## lavaan 0.6.16 ended normally after 15 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 10
## Number of inequality constraints 5
##
## Number of observations 30
##
## Model Test User Model:
##
## Test statistic 6.068
## Degrees of freedom 5
## P-value (Chi-square) 0.300
##
##
## [[4]]
## [[4]]$coefs
## L1 L2 L3 L4 L5
## 0.3384332 0.5238644 0.4325338 0.4546676 0.1122193
##
## [[4]]$vcoefs
## L1 L2 L3 L4 L5
## L1 7.787576e-03 -0.0006302157 -9.201167e-05 -1.448375e-04 1.826983e-05
## L2 -6.302157e-04 0.0095965837 -1.256685e-03 -1.541087e-03 -1.332804e-04
## L3 -9.201167e-05 -0.0012566850 8.347094e-03 -3.886514e-04 -1.621477e-06
## L4 -1.448375e-04 -0.0015410869 -3.886514e-04 8.596114e-03 -1.388429e-05
## L5 1.826983e-05 -0.0001332804 -1.621477e-06 -1.388429e-05 7.516828e-03
##
## [[4]]$fit
## lavaan 0.6.16 ended normally after 23 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 10
## Number of inequality constraints 5
##
## Number of observations 264
##
## Model Test User Model:
##
## Test statistic 36.623
## Degrees of freedom 5
## P-value (Chi-square) 0.000
##
##
## [[5]]
## [[5]]$coefs
## L1 L2 L3 L4 L5
## 0.6505729 0.5767207 0.3335709 0.4680604 -0.1908895
##
## [[5]]$vcoefs
## L1 L2 L3 L4 L5
## L1 1.718667e-02 -0.0026844610 -0.0002037401 -0.0007658679 3.988347e-05
## L2 -2.684461e-03 0.0159257850 0.0005739521 0.0006749661 -3.492890e-04
## L3 -2.037401e-04 0.0005739521 0.0146980847 0.0005715674 -2.534976e-04
## L4 -7.658679e-04 0.0006749661 0.0005715674 0.0147126561 -3.373881e-04
## L5 3.988347e-05 -0.0003492890 -0.0002534976 -0.0003373881 1.491776e-02
##
## [[5]]$fit
## lavaan 0.6.16 ended normally after 17 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 10
## Number of inequality constraints 5
##
## Number of observations 105
##
## Model Test User Model:
##
## Test statistic 14.475
## Degrees of freedom 5
## P-value (Chi-square) 0.013
## Extract relevant model parameters
## FIT INDICES
## Chi-squares and p values of the parameter-based models
## Select CFI and SRMR
## SRMR performs well in small samples (see Pavlov et al., 2021, EPM)
sfm_model_fit <- t(sapply(sfm.fit.all, function(x) {
fitMeasures(x$fit, c("chisq", "pvalue", "ntotal",
"cfi", "srmr"))}))
row.names(sfm_model_fit) <- names(TTCT1$data)
options(scipen=50)
round(sfm_model_fit,4)
## chisq pvalue ntotal cfi srmr
## Acar 83.3332 0.0000 477 0.8816 0.0710
## Acaretal 108.8346 0.0000 375 0.8421 0.1082
## Auth 6.0684 0.2996 30 0.9263 0.0915
## Balcia 36.6229 0.0000 264 0.5953 0.0766
## Balcib 14.4754 0.0129 105 0.7828 0.0752
## Barkul 241.9006 0.0000 599 0.9157 0.0556
## Berman 19.7296 0.0014 13 0.0000 0.2533
## Callans 20.9919 0.0008 60 0.8249 0.1265
## Carter_a 13.2179 0.0214 24 0.8721 0.1466
## Carter_b 2.1289 0.8310 24 1.0000 0.0348
## Chi 97.7060 0.0000 203 0.6591 0.1254
## Cho_F 13.9922 0.0157 24 0.8011 0.0947
## Cho_M 10.2306 0.0690 35 0.9212 0.0961
## Cockcroft 8.8922 0.1134 36 0.8845 0.0962
## Conway 14.1535 0.0147 25 0.8468 0.1038
## Crawford 9.7633 0.0822 21 0.9322 0.1001
## Digranes 7.0518 0.2168 17 0.9618 0.0756
## Fishkin 2.2949 0.8070 116 1.0000 0.0336
## Forsyth 15.3126 0.0091 45 0.9354 0.0807
## Gao 14.0567 0.0153 319 0.9583 0.0368
## Garcia 22.4599 0.0004 95 0.8848 0.0630
## Gollmar 68.0533 0.0000 128 0.5816 0.1725
## Hokanson 601.4395 0.0000 1758 0.8187 0.1122
## Houtz 6.7467 0.2402 42 0.9596 0.0725
## Humble 13.0713 0.0227 125 0.9593 0.0605
## Ibrahim 45.6004 0.0000 99 0.7167 0.1149
## Kim_1 212.7346 0.0000 500 0.8282 0.1158
## Kim_2a 262.3095 0.0000 1000 0.9004 0.0802
## Kim_2b 134.6176 0.0000 1000 0.9102 0.0849
## Kim_2c 305.3774 0.0000 1000 0.8737 0.1028
## Kim_3a 181.6475 0.0000 125 0.2080 0.3009
## Kim_3b 69.7880 0.0000 137 0.7345 0.1431
## Liu 1025.4772 0.0000 1047 0.7377 0.2090
## Miranda 1.9213 0.8599 12 1.0000 0.0801
## Nguyen 6.3830 0.2707 187 0.9927 0.0418
## Rose 9.2189 0.1006 12 0.7898 0.1172
## Rose_b 11.3207 0.0454 19 0.7149 0.1517
## Roskos_Y 8.9598 0.1107 39 0.8776 0.0875
## Roskos_O 2.6746 0.7500 31 1.0000 0.0691
## Rubenstein_a 84.3037 0.0000 371 0.9157 0.0721
## Rubenstein_b 36.0357 0.0000 371 0.9332 0.0574
## Samuels 21.1041 0.0008 51 0.7149 0.1485
## Shore 12.9287 0.0241 18 0.5875 0.1627
## Stephens 6.2337 0.2841 84 0.9927 0.0498
## Storer_a 33.0343 0.0000 43 0.7132 0.1172
## Storer_b 10.4611 0.0632 46 0.9234 0.0746
## Tannehill 50.4142 0.0000 199 0.8790 0.1066
## Tisone 10.3408 0.0661 24 0.7382 0.1507
## Trigani 44.2975 0.0000 107 0.7992 0.1077
## Voss 20.2329 0.0011 120 0.9486 0.0594
## Wan 7.7501 0.1706 95 0.9231 0.0581
## Warne 89.9866 0.0000 432 0.8950 0.0731
## Yoon 161.6311 0.0000 163 0.4854 0.2409
## Zbarskaya 60.8402 0.0000 125 0.5753 0.1558
## Zhang 131.0945 0.0000 1067 0.9490 0.0807
## Write out these indices
write.csv(round(sfm_model_fit,4), "SingleFactorModel-Fit.csv")
write.table(round(sfm_model_fit,4), "SingleFactorModel-Fit.txt", sep='\t')
head(sfm_model_fit, 5)
## chisq pvalue ntotal cfi srmr
## Acar 83.333237 0.0000000000000002220446 477 0.8816320 0.07096241
## Acaretal 108.834597 0.0000000000000000000000 375 0.8420727 0.10816058
## Auth 6.068386 0.2996214212440039270646 30 0.9263234 0.09146972
## Balcia 36.622915 0.0000007127725482058977 264 0.5953345 0.07661383
## Balcib 14.475398 0.0128555988944794030715 105 0.7827929 0.07518984
Res assigned to
Innov## Two-factor model with two correlated traits and Res assigned to Innov
## Model estimation
tfm2.fit.all <- lapply(1:k, FUN = tra_study_lavaan,
data = TTCT1,
para_names = para_names,
model = TwoFactorModelB,
estimator = "ML",
fixed.x = FALSE)
head(tfm2.fit.all, 5)
## [[1]]
## [[1]]$coefs
## L1 L2 L3 L4 L5
## 0.7969849 0.8003590 0.6446502 0.5195315 0.6987064
##
## [[1]]$vcoefs
## L1 L2 L3 L4 L5
## L1 0.0018861508 0.0004099329 0.0004707938 0.0001950756 0.0002623528
## L2 0.0004099329 0.0018834415 0.0004673686 0.0001959015 0.0002634636
## L3 0.0004707938 0.0004673686 0.0020258499 0.0001577891 0.0002122070
## L4 0.0001950756 0.0001959015 0.0001577891 0.0031343648 -0.0003250442
## L5 0.0002623528 0.0002634636 0.0002122070 -0.0003250442 0.0039772879
##
## [[1]]$fit
## lavaan 0.6.16 ended normally after 18 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 11
## Number of inequality constraints 5
##
## Number of observations 477
##
## Model Test User Model:
##
## Test statistic 57.687
## Degrees of freedom 4
## P-value (Chi-square) 0.000
##
##
## [[2]]
## [[2]]$coefs
## L1 L2 L3 L4 L5
## 0.8684909 0.8753378 0.6396407 0.4880936 0.9608786
##
## [[2]]$vcoefs
## L1 L2 L3 L4 L5
## L1 0.00206802892 0.00069584126 0.00071243600 0.00009368257 0.0001844270
## L2 0.00069584126 0.00205814308 0.00070152449 0.00009442116 0.0001858810
## L3 0.00071243600 0.00070152449 0.00238115270 0.00006899694 0.0001358299
## L4 0.00009368257 0.00009442116 0.00006899694 0.00543615561 -0.0053004314
## L5 0.00018442700 0.00018588101 0.00013582993 -0.00530043142 0.0134203654
##
## [[2]]$fit
## lavaan 0.6.16 ended normally after 21 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 11
## Number of inequality constraints 5
##
## Number of observations 375
##
## Model Test User Model:
##
## Test statistic 33.092
## Degrees of freedom 4
## P-value (Chi-square) 0.000
##
##
## [[3]]
## [[3]]$coefs
## L1 L2 L3 L4 L5
## 0.5895150 0.9156545 0.3050138 0.8405801 0.3806894
##
## [[3]]$vcoefs
## L1 L2 L3 L4 L5
## L1 0.0453756427 -0.016991967 0.0092965831 0.0018551323 0.0008401689
## L2 -0.0169919669 0.062985668 -0.0068274011 0.0028814532 0.0013049783
## L3 0.0092965831 -0.006827401 0.0385664551 0.0009598415 0.0004347016
## L4 0.0018551323 0.002881453 0.0009598415 0.1800957928 -0.0543381624
## L5 0.0008401689 0.001304978 0.0004347016 -0.0543381624 0.0625523360
##
## [[3]]$fit
## lavaan 0.6.16 ended normally after 24 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 11
## Number of inequality constraints 5
##
## Number of observations 30
##
## Model Test User Model:
##
## Test statistic 3.827
## Degrees of freedom 4
## P-value (Chi-square) 0.430
##
##
## [[4]]
## [[4]]$coefs
## L1 L2 L3 L4 L5
## 0.2920001 1.0000000 0.1540000 0.6737536 0.4512037
##
## [[4]]$vcoefs
## L1 L2 L3 L4 L5
## L1 0.00361265564 0.00055093560 0.00008484407 0.00003993787 0.00002674585
## L2 0.00055093560 0.00188676565 0.00029056186 0.00013677351 0.00009159538
## L3 0.00008484407 0.00029056186 0.00372878360 0.00002106312 0.00001410569
## L4 0.00003993787 0.00013677351 0.00002106312 0.02310016732 -0.01024367663
## L5 0.00002674585 0.00009159538 0.00001410569 -0.01024367663 0.01244114141
##
## [[4]]$fit
## lavaan 0.6.16 ended normally after 55 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 11
## Number of inequality constraints 5
##
## Number of observations 264
##
## Model Test User Model:
##
## Test statistic 17.457
## Degrees of freedom 4
## P-value (Chi-square) 0.002
##
##
## [[5]]
## [[5]]$coefs
## L1 L2 L3 L4 L5
## 0.8040935 0.5316154 -0.1983872 0.4340951 0.8362217
##
## [[5]]$vcoefs
## L1 L2 L3 L4 L5
## L1 0.0325363543 -0.0126544938 0.00306217860 0.00029116216 0.0005608822
## L2 -0.0126544938 0.0197394588 -0.00243904990 0.00019249800 0.0003708198
## L3 0.0030621786 -0.0024390499 0.01364481519 -0.00007183599 -0.0001383817
## L4 0.0002911622 0.0001924980 -0.00007183599 0.02442133368 -0.0257014945
## L5 0.0005608822 0.0003708198 -0.00013838175 -0.02570149452 0.0650521958
##
## [[5]]$fit
## lavaan 0.6.16 ended normally after 27 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 11
## Number of inequality constraints 5
##
## Number of observations 105
##
## Model Test User Model:
##
## Test statistic 5.016
## Degrees of freedom 4
## P-value (Chi-square) 0.286
## Extract relevant model parameters
## FIT INDICES
## Chi-squares and p values of the parameter-based models
tfm2_model_fit <- t(sapply(tfm2.fit.all, function(x) {
fitMeasures(x$fit, c("chisq", "pvalue", "ntotal",
"cfi", "srmr"))}))
row.names(tfm2_model_fit) <- names(TTCT1$data)
options(scipen=50)
round(tfm2_model_fit,4)
## chisq pvalue ntotal cfi srmr
## Acar 57.6867 0.0000 477 0.9189 0.0565
## Acaretal 33.0925 0.0000 375 0.9558 0.0507
## Auth 3.8267 0.4300 30 1.0000 0.0672
## Balcia 17.4574 0.0016 264 0.8278 0.0569
## Balcib 5.0161 0.2856 105 0.9767 0.0468
## Barkul 209.5178 0.0000 599 0.9269 0.0537
## Berman 7.9998 0.0916 13 0.7175 0.1554
## Callans 17.0886 0.0019 60 0.8567 0.1120
## Carter_a 5.1019 0.2770 24 0.9829 0.0709
## Carter_b 2.0598 0.7248 24 1.0000 0.0336
## Chi 114.0734 0.0000 203 0.5952 0.1638
## Cho_F 11.5357 0.0212 24 0.8333 0.0795
## Cho_M 6.5131 0.1640 35 0.9621 0.0579
## Cockcroft 8.8535 0.0649 36 0.8559 0.0942
## Conway 7.1166 0.1299 25 0.9478 0.0920
## Crawford 8.7763 0.0669 21 0.9320 0.0901
## Digranes 4.2876 0.3685 17 0.9946 0.0556
## Fishkin 2.7655 0.5978 116 1.0000 0.0510
## Forsyth 8.6404 0.0707 45 0.9709 0.0401
## Gao 5.3692 0.2515 319 0.9937 0.0243
## Garcia 17.6336 0.0015 95 0.9101 0.0555
## Gollmar 50.4486 0.0000 128 0.6918 0.1480
## Hokanson 282.8336 0.0000 1758 0.9153 0.0723
## Houtz 6.6986 0.1527 42 0.9375 0.0732
## Humble 12.5814 0.0135 125 0.9567 0.0586
## Ibrahim 43.1922 0.0000 99 0.7265 0.1273
## Kim_1 133.7546 0.0000 500 0.8927 0.0786
## Kim_2a 144.5767 0.0000 1000 0.9456 0.0508
## Kim_2b 52.4440 0.0000 1000 0.9664 0.0483
## Kim_2c 168.1729 0.0000 1000 0.9310 0.0628
## Kim_3a 141.7916 0.0000 125 0.3822 0.2546
## Kim_3b 60.1716 0.0000 137 0.7698 0.1375
## Liu 557.0301 0.0000 1047 0.8578 0.1704
## Miranda 0.9114 0.9229 12 1.0000 0.0521
## Nguyen 3.0839 0.5439 187 1.0000 0.0252
## Rose 5.1725 0.2700 12 0.9416 0.0939
## Rose_b 9.5764 0.0482 19 0.7485 0.1636
## Roskos_Y 8.8310 0.0655 39 0.8507 0.0857
## Roskos_O 1.9012 0.7539 31 1.0000 0.0603
## Rubenstein_a 51.4485 0.0000 371 0.9496 0.0513
## Rubenstein_b 25.1730 0.0000 371 0.9544 0.0524
## Samuels 9.0344 0.0602 51 0.9109 0.1071
## Shore 7.1004 0.1307 18 0.8387 0.1371
## Stephens 5.9531 0.2027 84 0.9885 0.0482
## Storer_a 18.5349 0.0010 43 0.8513 0.0939
## Storer_b 9.3526 0.0529 46 0.9249 0.0692
## Tannehill 36.5296 0.0000 199 0.9134 0.0929
## Tisone 9.7572 0.0447 24 0.7178 0.1732
## Trigani 32.3158 0.0000 107 0.8553 0.0814
## Voss 6.6525 0.1554 120 0.9910 0.0213
## Wan 7.7500 0.1012 95 0.8952 0.0581
## Warne 52.9054 0.0000 432 0.9396 0.0496
## Yoon 121.9903 0.0000 163 0.6124 0.2126
## Zbarskaya 27.6169 0.0000 125 0.8204 0.1117
## Zhang 19.0140 0.0008 1067 0.9939 0.0208
## Write out these indices
write.csv(round(tfm2_model_fit,4), "TwoFactorModel2-Fit.csv")
write.table(round(tfm2_model_fit,4), "TwoFactorModel2-Fit.txt", sep='\t')
head(tfm2_model_fit, 5)
## chisq pvalue ntotal cfi srmr
## Acar 57.686705 0.000000000008878454 477 0.9188750 0.05648029
## Acaretal 33.092492 0.000001143512293966 375 0.9557518 0.05067900
## Auth 3.826686 0.429969118942402750 30 1.0000000 0.06722991
## Balcia 17.457364 0.001574836742134322 264 0.8277916 0.05693066
## Balcib 5.016106 0.285648861730992576 105 0.9767075 0.04683203
## Extract the scale reliability coefficients from the primary studies
## Point estimates
tfm2.srl1 <- t(sapply(1:k, function(x) {parameterEstimates(tfm2.fit.all[[x]]$fit)[14,5]}))
tfm2.srl2 <- t(sapply(1:k, function(x) {parameterEstimates(tfm2.fit.all[[x]]$fit)[15,5]}))
tfm2.srlcr <- t(sapply(1:k, function(x) {parameterEstimates(tfm2.fit.all[[x]]$fit)[16,5]}))
## Standard errors
tfm2.srl1.se <- t(sapply(1:k, function(x) {parameterEstimates(tfm2.fit.all[[x]]$fit)[14,6]}))
tfm2.srl2.se <- t(sapply(1:k, function(x) {parameterEstimates(tfm2.fit.all[[x]]$fit)[15,6]}))
tfm2.srlcr.se <- t(sapply(1:k, function(x) {parameterEstimates(tfm2.fit.all[[x]]$fit)[16,6]}))
## Lower 95% CI bound
tfm2.srl1.ci.low <- t(sapply(1:k, function(x) {parameterEstimates(tfm2.fit.all[[x]]$fit)[14,9]}))
tfm2.srl2.ci.low <- t(sapply(1:k, function(x) {parameterEstimates(tfm2.fit.all[[x]]$fit)[15,9]}))
tfm2.srlcr.ci.low <- t(sapply(1:k, function(x) {parameterEstimates(tfm2.fit.all[[x]]$fit)[16,9]}))
## Upper 95% CI bound
tfm2.srl1.ci.upp <- t(sapply(1:k, function(x) {parameterEstimates(tfm2.fit.all[[x]]$fit)[14,10]}))
tfm2.srl2.ci.upp <- t(sapply(1:k, function(x) {parameterEstimates(tfm2.fit.all[[x]]$fit)[15,10]}))
tfm2.srlcr.ci.upp <- t(sapply(1:k, function(x) {parameterEstimates(tfm2.fit.all[[x]]$fit)[16,10]}))
## Factor correlation
tfm2.fcorr <- t(sapply(1:k, function(x) {parameterEstimates(tfm2.fit.all[[x]]$fit)[13,5]}))
## Save these statistics
tfm2.srl.summary <- data.frame(names.studies,
TTCT1$n,
t(tfm2.srl1 ),
t(tfm2.srl1.se),
t(tfm2.srl1.ci.low),
t(tfm2.srl1.ci.upp),
t(tfm2.srl2),
t(tfm2.srl2.se),
t(tfm2.srl2.ci.low),
t(tfm2.srl2.ci.upp),
t(tfm2.srlcr),
t(tfm2.srlcr.se),
t(tfm2.srlcr.ci.low),
t(tfm2.srlcr.ci.upp),
t(tfm2.fcorr))
colnames(tfm2.srl.summary) <- c("Study",
"N",
"Omega Factor 1",
"SE",
"Lower 95% CI",
"Upper 95% CI",
"Omega Factor 2",
"SE",
"Lower 95% CI",
"Upper 95% CI",
"Composite reliability",
"SE",
"Lower 95% CI",
"Upper 95% CI",
"Factor correlation")
tfm2.srl.summary
## Study N Omega Factor 1 SE Lower 95% CI Upper 95% CI
## 1 Acar 477 0.79342944 0.016278481 0.76152421 0.8253347
## 2 Acaretal 375 0.84145745 0.014069535 0.81388167 0.8690332
## 3 Auth 30 0.65564386 0.104524431 0.45077974 0.8605080
## 4 Balcia 264 0.52510048 0.039484520 0.44771224 0.6024887
## 5 Balcib 105 0.38902715 0.099196619 0.19460535 0.5834490
## 6 Barkul 599 0.87684294 0.009058061 0.85908947 0.8945964
## 7 Berman 13 0.21016567 0.195514311 -0.17303533 0.5933667
## 8 Callans 60 0.82486789 0.038333729 0.74973516 0.9000006
## 9 Carter_a 24 0.92550812 0.026368277 0.87382725 0.9771890
## 10 Carter_b 24 0.87840114 0.041440901 0.79717846 0.9596238
## 11 Chi 203 0.67031672 0.034570247 0.60256028 0.7380732
## 12 Cho_F 24 0.78113939 0.075683560 0.63280234 0.9294764
## 13 Cho_M 35 0.88259986 0.033779342 0.81639357 0.9488062
## 14 Cockcroft 36 0.51583279 0.135877965 0.24951687 0.7821487
## 15 Conway 25 0.83865184 0.055255865 0.73035233 0.9469513
## 16 Crawford 21 0.92207022 0.030206796 0.86286599 0.9812745
## 17 Digranes 17 0.91767077 0.034578505 0.84989815 0.9854434
## 18 Fishkin 116 0.67543999 0.052009003 0.57350422 0.7773758
## 19 Forsyth 45 0.94055748 0.015555705 0.91006886 0.9710461
## 20 Gao 319 0.50809497 0.047486027 0.41502407 0.6011659
## 21 Garcia 95 0.77668460 0.039474752 0.69931551 0.8540537
## 22 Gollmar 128 0.69572184 0.041101217 0.61516494 0.7762787
## 23 Hokanson 1758 0.82110347 0.007243849 0.80690579 0.8353012
## 24 Houtz 42 0.75289536 0.063984429 0.62748818 0.8783025
## 25 Humble 125 0.79567253 0.030606303 0.73568528 0.8556598
## 26 Ibrahim 99 0.75192054 0.039023666 0.67543556 0.8284055
## 27 Kim_1 500 0.88283380 0.008954717 0.86528287 0.9003847
## 28 Kim_2a 1000 0.88851515 0.006118823 0.87652248 0.9005078
## 29 Kim_2b 1000 0.82563158 0.009412889 0.80718266 0.8440805
## 30 Kim_2c 1000 0.88656108 0.006190075 0.87442875 0.8986934
## 31 Kim_3a 125 0.58458079 0.052557496 0.48156999 0.6875916
## 32 Kim_3b 137 0.23957472 0.093681148 0.05596305 0.4231864
## 33 Liu 1047 0.85566281 0.007922086 0.84013581 0.8711898
## 34 Miranda 12 0.66708273 0.162981604 0.34764466 0.9865208
## 35 Nguyen 187 0.77821059 0.026939478 0.72541019 0.8310110
## 36 Rose 12 0.68572562 0.143683681 0.40411078 0.9673405
## 37 Rose_b 19 0.73783593 0.093877348 0.55383971 0.9218322
## 38 Roskos_Y 39 0.66456878 0.089855121 0.48845598 0.8406816
## 39 Roskos_O 31 0.51431965 0.194303603 0.13349158 0.8951477
## 40 Rubenstein_a 371 0.88973463 0.009920206 0.87029138 0.9091779
## 41 Rubenstein_b 371 0.73558217 0.022951589 0.69059788 0.7805665
## 42 Samuels 51 0.64164977 0.074671111 0.49529708 0.7880025
## 43 Shore 18 0.04879865 0.194405932 -0.33222998 0.4298273
## 44 Stephens 84 0.88711473 0.021369179 0.84523191 0.9289976
## 45 Storer_a 43 0.68572584 0.075903808 0.53695711 0.8344946
## 46 Storer_b 46 0.82236445 0.044859980 0.73444050 0.9102884
## 47 Tannehill 199 0.80535849 0.023291147 0.75970868 0.8510083
## 48 Tisone 24 0.74438242 0.081760886 0.58413403 0.9046308
## 49 Trigani 107 0.85280675 0.023974059 0.80581846 0.8997950
## 50 Voss 120 0.88620094 0.017965305 0.85098959 0.9214123
## 51 Wan 95 0.43441825 0.100123344 0.23818011 0.6306564
## 52 Warne 432 0.84503235 0.012736174 0.82006991 0.8699948
## 53 Yoon 163 0.74419778 0.031567220 0.68232716 0.8060684
## 54 Zbarskaya 125 0.65602250 0.050572601 0.55690203 0.7551430
## 55 Zhang 1067 0.91182228 0.004665094 0.90267886 0.9209657
## Omega Factor 2 SE Lower 95% CI Upper 95% CI Composite reliability
## 1 0.54442539 0.04311695 0.459917724 0.6289331 0.7995981
## 2 0.71460948 0.05953533 0.597922378 0.8312966 0.8473549
## 3 0.56496187 0.25729832 0.060666434 1.0692573 0.7062665
## 4 0.48524883 0.07529410 0.337675104 0.6328226 0.5777127
## 5 0.59196819 0.13406183 0.329211825 0.8547245 0.5673408
## 6 0.76734112 0.01859382 0.730897899 0.8037843 0.9067247
## 7 0.13125388 0.63906542 -1.121291339 1.3837991 0.3792193
## 8 0.57080369 0.37412291 -0.162463739 1.3040711 0.7960050
## 9 0.77000008 0.08239435 0.608510111 0.9314900 0.9062086
## 10 0.44168307 0.22914851 -0.007439755 0.8908059 0.8502797
## 11 0.59393298 0.05735172 0.481525674 0.7063403 0.7389661
## 12 0.74362049 0.10602301 0.535819218 0.9514218 0.8521182
## 13 0.52951075 0.15915172 0.217579111 0.8414424 0.8288963
## 14 0.57158106 0.16899674 0.240353530 0.9028086 0.7019128
## 15 0.81823414 0.07401261 0.673172080 0.9632962 0.8918299
## 16 0.55176587 0.19595122 0.167708530 0.9358232 0.8802762
## 17 0.19431940 0.44525652 -0.678367348 1.0670062 0.8539556
## 18 0.55499998 0.06156126 0.434342125 0.6756578 0.6332173
## 19 0.69824220 0.09756896 0.507010559 0.8894739 0.9148728
## 20 0.40557490 0.06722093 0.273824291 0.5373255 0.6626395
## 21 0.66395267 0.06913231 0.528455821 0.7994495 0.8312741
## 22 0.61601475 0.14217430 0.337358237 0.8946713 0.5904046
## 23 0.68896747 0.01872603 0.652265130 0.7256698 0.8376745
## 24 0.37844715 0.19970361 -0.012964733 0.7698590 0.7544145
## 25 0.12418332 0.17032751 -0.209652468 0.4580191 0.7245921
## 26 0.49703327 0.12591109 0.250252063 0.7438145 0.7632648
## 27 0.64133584 0.04348908 0.556098816 0.7265729 0.8553685
## 28 0.66067493 0.02159081 0.618357717 0.7029921 0.8796064
## 29 0.46688762 0.03601213 0.396305141 0.5374701 0.7621709
## 30 0.59277500 0.02756163 0.538755195 0.6467948 0.8475895
## 31 0.72052879 0.07125025 0.580880865 0.8601767 0.7188807
## 32 0.66982318 0.05641769 0.559246536 0.7803998 0.6533906
## 33 0.82925737 0.01403242 0.801754324 0.8567604 0.8909234
## 34 0.34500000 0.22212131 -0.090349758 0.7803498 0.5295116
## 35 0.26798772 0.11342589 0.045677058 0.4902984 0.6832934
## 36 0.78499954 0.10997994 0.569442830 1.0005563 0.8199744
## 37 0.34999823 0.17644147 0.004179309 0.6958171 0.7224723
## 38 0.33423467 0.21365718 -0.084525713 0.7529950 0.7051059
## 39 0.07834996 0.33674747 -0.581662952 0.7383629 0.5443966
## 40 0.64601509 0.03877220 0.570022975 0.7220072 0.8790599
## 41 0.56722532 0.04629451 0.476489758 0.6579609 0.7846358
## 42 0.74000003 0.06263745 0.617232885 0.8627672 0.6581952
## 43 0.47991626 0.24917184 -0.008451577 0.9682841 0.5015645
## 44 0.23396191 0.18273740 -0.124196812 0.5921206 0.7925324
## 45 0.78499986 0.05809909 0.671127741 0.8988720 0.8199745
## 46 0.49852653 0.16718496 0.170850040 0.8262030 0.8118961
## 47 0.55369507 0.06374239 0.428762276 0.6786279 0.8048860
## 48 0.64999988 0.11519913 0.424213735 0.8757860 0.6900959
## 49 0.57668943 0.10559243 0.369732059 0.7836468 0.8213932
## 50 0.70101044 0.05527658 0.592670348 0.8093505 0.8902267
## 51 0.42685868 0.11811324 0.195360980 0.6583564 0.5986157
## 52 0.60592141 0.03833412 0.530787909 0.6810549 0.8427107
## 53 0.73499994 0.03558982 0.665245164 0.8047547 0.7849945
## 54 0.75199998 0.03847119 0.676597836 0.8274021 0.7536246
## 55 0.62011383 0.08280858 0.457811995 0.7824157 0.8619198
## SE Lower 95% CI Upper 95% CI Factor correlation
## 1 0.015202535 0.7698017 0.8293946 0.67112035
## 2 0.016050724 0.8158961 0.8788138 0.40766720
## 3 0.092312134 0.5253380 0.8871949 0.48204516
## 4 0.038109666 0.5030191 0.6524063 0.32801331
## 5 0.071227956 0.4277366 0.7069451 0.42054214
## 6 0.006367321 0.8942449 0.9192044 0.90362658
## 7 0.292905012 -0.1948640 0.9533026 -1.99997082
## 8 0.084711215 0.6299741 0.9620360 0.33847042
## 9 0.030774514 0.8458916 0.9665255 0.34618970
## 10 0.051826648 0.7487013 0.9518581 1.06267836
## 11 0.028113255 0.6838652 0.7940671 0.60827484
## 12 0.049000598 0.7560788 0.9481577 0.78415097
## 13 0.048676434 0.7334922 0.9243004 0.41362514
## 14 0.081491839 0.5421917 0.8616339 1.05894673
## 15 0.035242566 0.8227557 0.9609040 0.70916554
## 16 0.045274721 0.7915393 0.9690130 0.74551392
## 17 0.068403324 0.7198875 0.9880236 1.86818896
## 18 0.047527859 0.5400644 0.7263702 -0.02750476
## 19 0.022620103 0.8705382 0.9592074 0.65616223
## 20 0.030946022 0.6019864 0.7232925 1.30264630
## 21 0.028347792 0.7757135 0.8868348 0.80388201
## 22 0.084898049 0.4240075 0.7568017 -0.29942308
## 23 0.006533163 0.8248697 0.8504793 0.51334010
## 24 0.062922580 0.6310885 0.8777404 0.92952069
## 25 0.042791799 0.6407217 0.8084624 1.38626219
## 26 0.039552275 0.6857437 0.8407858 0.67185316
## 27 0.011844659 0.8321534 0.8785836 0.42054700
## 28 0.006389031 0.8670841 0.8921287 0.68298986
## 29 0.012648486 0.7373803 0.7869614 0.29332002
## 30 0.008232262 0.8314545 0.8637244 0.43867231
## 31 0.038151808 0.6441045 0.7936568 0.43386323
## 32 0.047508286 0.5602760 0.7465051 1.51035460
## 33 0.005719269 0.8797138 0.9021329 0.50836078
## 34 0.183120296 0.1706024 0.8884208 0.39013455
## 35 0.038323521 0.6081807 0.7584062 0.36799956
## 36 0.080796026 0.6616171 0.9783317 0.71164958
## 37 0.090955429 0.5442030 0.9007417 -0.56000128
## 38 0.077116973 0.5539595 0.8562524 1.11841425
## 39 0.133724762 0.2823009 0.8064923 2.07692958
## 40 0.010666716 0.8581535 0.8999663 0.70681067
## 41 0.018205624 0.7489534 0.8203182 0.79647720
## 42 0.060411229 0.5397913 0.7765990 -0.10999984
## 43 0.161694096 0.1846499 0.8184791 3.33168108
## 44 0.040502569 0.7131489 0.8719160 0.74456919
## 45 0.042682138 0.7363191 0.9036300 0.71164801
## 46 0.047358438 0.7190753 0.9047170 0.74711475
## 47 0.022718967 0.7603577 0.8494144 0.64817413
## 48 0.082728027 0.5279519 0.8522398 -0.11999999
## 49 0.030549877 0.7615165 0.8812698 0.41817045
## 50 0.016719483 0.8574572 0.9229963 0.74367211
## 51 0.067252572 0.4668031 0.7304283 0.99740453
## 52 0.012553997 0.8181054 0.8673161 0.66580678
## 53 0.024549751 0.7368779 0.8331111 0.29000060
## 54 0.033105707 0.6887387 0.8185106 0.36486522
## 55 0.017322974 0.8279674 0.8958722 0.28115578
## Write out the results
write.table(tfm2.srl.summary, "TwoFactorModel2-Reliability.txt", sep='\t')
## Note: The standard errors of the derived parameters are identical
## to the asymptotic sampling errors.
Res## Model 3
## Two-factor model with a cross-loading of RES
## Model estimation
tfmc.fit.all <- lapply(1:k, FUN = tra_study_lavaan,
data = TTCT1,
para_names = para_names,
model = TwoFactorModelC,
estimator = "ML",
fixed.x = FALSE)
head(tfmc.fit.all, 5)
## [[1]]
## [[1]]$coefs
## L1 L2 L3 L4 L5
## 0.8131975 0.7993139 0.4172651 0.5956043 0.6094648
##
## [[1]]$vcoefs
## L1 L2 L3 L4 L5
## L1 0.0019904044 0.0002967262 0.0002107058 0.00019608301 0.00020064613
## L2 0.0002967262 0.0019938449 0.0002621118 0.00019273530 0.00019722051
## L3 0.0002107058 0.0002621118 0.0051404659 0.00071402718 0.00080502182
## L4 0.0001960830 0.0001927353 0.0007140272 0.00317679530 0.00005871318
## L5 0.0002006461 0.0001972205 0.0008050218 0.00005871318 0.00322786977
##
## [[1]]$fit
## lavaan 0.6.16 ended normally after 20 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 12
## Number of inequality constraints 5
##
## Number of observations 477
##
## Model Test User Model:
##
## Test statistic 44.785
## Degrees of freedom 3
## P-value (Chi-square) 0.000
##
##
## [[2]]
## [[2]]$coefs
## L1 L2 L3 L4 L5
## 0.8731001 0.8738977 0.5700938 0.5508761 0.8513708
##
## [[2]]$vcoefs
## L1 L2 L3 L4 L5
## L1 0.0021150725 0.0006428700 0.0006173610 0.0001158732 0.0001790802
## L2 0.0006428700 0.0021140797 0.0006148720 0.0001159791 0.0001792439
## L3 0.0006173610 0.0006148720 0.0030131822 -0.0003233503 0.0008866267
## L4 0.0001158732 0.0001159791 -0.0003233503 0.0046558590 -0.0025418223
## L5 0.0001790802 0.0001792439 0.0008866267 -0.0025418223 0.0074277732
##
## [[2]]$fit
## lavaan 0.6.16 ended normally after 18 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 12
## Number of inequality constraints 5
##
## Number of observations 375
##
## Model Test User Model:
##
## Test statistic 27.222
## Degrees of freedom 3
## P-value (Chi-square) 0.000
##
##
## [[3]]
## [[3]]$coefs
## L1 L2 L3 L4 L5
## 0.5841981 0.9243441 0.2905938 0.8505294 0.3762364
##
## [[3]]$vcoefs
## L1 L2 L3 L4 L5
## L1 0.0472744385 -0.020955050 0.0149970190 0.001811084 0.0008011436
## L2 -0.0209550502 0.069905399 -0.0173292962 0.002865578 0.0012676049
## L3 0.0149970190 -0.017329296 0.0603273242 0.004479300 -0.0008967692
## L4 0.0018110844 0.002865578 0.0044793005 0.187477810 -0.0567234757
## L5 0.0008011436 0.001267605 -0.0008967692 -0.056723476 0.0626024237
##
## [[3]]$fit
## lavaan 0.6.16 ended normally after 27 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 12
## Number of inequality constraints 5
##
## Number of observations 30
##
## Model Test User Model:
##
## Test statistic 3.824
## Degrees of freedom 3
## P-value (Chi-square) 0.281
##
##
## [[4]]
## [[4]]$coefs
## L1 L2 L3 L4 L5
## 0.2920002 1.0000000 0.1488891 0.6714460 0.4527535
##
## [[4]]$vcoefs
## L1 L2 L3 L4 L5
## L1 0.00361265511 0.0005509357 0.00008202829 0.00003994436 0.00002693432
## L2 0.00055093569 0.0018867655 0.00028091873 0.00013679570 0.00009224080
## L3 0.00008202829 0.0002809187 0.00463717783 0.00021385343 -0.00007048838
## L4 0.00003994436 0.0001367957 0.00021385343 0.02280211045 -0.01012120683
## L5 0.00002693432 0.0000922408 -0.00007048838 -0.01012120683 0.01242535195
##
## [[4]]$fit
## lavaan 0.6.16 ended normally after 53 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 12
## Number of inequality constraints 5
##
## Number of observations 264
##
## Model Test User Model:
##
## Test statistic 17.429
## Degrees of freedom 3
## P-value (Chi-square) 0.001
##
##
## [[5]]
## [[5]]$coefs
## L1 L2 L3 L4 L5
## 0.8041868 0.5347016 -0.1506717 0.4541420 0.7993090
##
## [[5]]$vcoefs
## L1 L2 L3 L4 L5
## L1 0.0359874335 -0.0148887075 0.004788094 0.0003165004 0.0005570545
## L2 -0.0148887075 0.0211724338 -0.003191701 0.0002104401 0.0003703837
## L3 0.0047880939 -0.0031917005 0.019901383 0.0017858456 -0.0041118279
## L4 0.0003165004 0.0002104401 0.001785846 0.0230965143 -0.0203239472
## L5 0.0005570545 0.0003703837 -0.004111828 -0.0203239472 0.0517589851
##
## [[5]]$fit
## lavaan 0.6.16 ended normally after 26 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 12
## Number of inequality constraints 5
##
## Number of observations 105
##
## Model Test User Model:
##
## Test statistic 4.643
## Degrees of freedom 3
## P-value (Chi-square) 0.200
## Extract relevant model parameters
## FIT INDICES
## Chi-squares and p values of the parameter-based models
tfmc_model_fit <- t(sapply(tfmc.fit.all, function(x) {
fitMeasures(x$fit, c("chisq", "pvalue", "ntotal",
"cfi", "srmr"))}))
row.names(tfmc_model_fit) <- names(TTCT1$data)
options(scipen=50)
round(tfmc_model_fit,4)
## chisq pvalue ntotal cfi srmr
## Acar 44.7849 0.0000 477 0.9369 0.0470
## Acaretal 27.2219 0.0000 375 0.9632 0.0372
## Auth 3.8239 0.2811 30 0.9432 0.0678
## Balcia 17.4290 0.0006 264 0.8154 0.0568
## Balcib 4.6425 0.1999 105 0.9623 0.0417
## Barkul 105.9531 0.0000 599 0.9634 0.0207
## Berman 6.7223 0.0813 13 0.7371 0.1304
## Callans 4.3791 0.2233 60 0.9849 0.0658
## Carter_a 0.6436 0.8864 24 1.0000 0.0421
## Carter_b 2.0061 0.5711 24 1.0000 0.0328
## Chi 55.4909 0.0000 203 0.8070 0.1078
## Cho_F 4.5596 0.2070 24 0.9655 0.0536
## Cho_M 6.4872 0.0902 35 0.9475 0.0580
## Cockcroft 8.2605 0.0409 36 0.8439 0.0962
## Conway 0.7394 0.8639 25 1.0000 0.0151
## Crawford 3.8836 0.2743 21 0.9874 0.0518
## Digranes 4.1299 0.2478 17 0.9790 0.0554
## Fishkin 0.6283 0.8899 116 1.0000 0.0151
## Forsyth 4.2433 0.2364 45 0.9922 0.0310
## Gao 5.0991 0.1647 319 0.9903 0.0240
## Garcia 11.5125 0.0093 95 0.9438 0.0469
## Gollmar 33.1378 0.0000 128 0.8000 0.1100
## Hokanson 196.2533 0.0000 1758 0.9413 0.0444
## Houtz 2.9690 0.3964 42 1.0000 0.0447
## Humble 6.2968 0.0980 125 0.9834 0.0406
## Ibrahim 40.7638 0.0000 99 0.7365 0.1105
## Kim_1 81.5590 0.0000 500 0.9350 0.0973
## Kim_2a 117.9371 0.0000 1000 0.9555 0.0404
## Kim_2b 12.0904 0.0071 1000 0.9937 0.0131
## Kim_2c 107.9193 0.0000 1000 0.9559 0.0864
## Kim_3a 43.2068 0.0000 125 0.8197 0.1415
## Kim_3b 36.3656 0.0000 137 0.8633 0.1240
## Liu 36.6686 0.0000 1047 0.9913 0.0300
## Miranda 0.6569 0.8833 12 1.0000 0.0430
## Nguyen 3.0489 0.3841 187 0.9997 0.0239
## Rose 5.0376 0.1691 12 0.8985 0.0878
## Rose_b 11.2871 0.0103 19 0.6262 0.1509
## Roskos_Y 8.8309 0.0316 39 0.8198 0.0855
## Roskos_O 2.1785 0.5362 31 1.0000 0.0618
## Rubenstein_a 25.8150 0.0000 371 0.9757 0.0267
## Rubenstein_b 15.1161 0.0017 371 0.9739 0.0354
## Samuels 4.1263 0.2481 51 0.9801 0.0680
## Shore 7.5574 0.0561 18 0.7629 0.1392
## Stephens 1.8276 0.6090 84 1.0000 0.0280
## Storer_a 18.0516 0.0004 43 0.8460 0.0878
## Storer_b 9.1835 0.0269 46 0.9132 0.0768
## Tannehill 6.4306 0.0924 199 0.9909 0.0214
## Tisone 1.9791 0.5768 24 1.0000 0.0637
## Trigani 7.1323 0.0678 107 0.9789 0.0529
## Voss 2.8902 0.4089 120 1.0000 0.0183
## Wan 7.0116 0.0715 95 0.8878 0.0551
## Warne 28.0935 0.0000 432 0.9690 0.0439
## Yoon 23.1185 0.0000 163 0.9339 0.0907
## Zbarskaya 4.3840 0.2229 125 0.9895 0.0362
## Zhang 17.3737 0.0006 1067 0.9942 0.0187
## Write out these indices
write.csv(round(tfmc_model_fit,4), "TwoFactorModel3-Fit.csv")
write.table(round(tfmc_model_fit,4), "TwoFactorModel3-Fit.txt", sep='\t')
head(tfmc_model_fit, 5)
## chisq pvalue ntotal cfi srmr
## Acar 44.784875 0.000000001027982 477 0.9368596 0.04699874
## Acaretal 27.221879 0.000005289304654 375 0.9631597 0.03724663
## Auth 3.823867 0.281122185722077 30 0.9431856 0.06779564
## Balcia 17.429025 0.000576728751025 264 0.8153577 0.05677000
## Balcib 4.642518 0.199924901808852 105 0.9623481 0.04169383
## Extract the scale reliability coefficients from the primary studies
## Point estimates
tfmc.srl1 <- t(sapply(1:k, function(x) {parameterEstimates(tfmc.fit.all[[x]]$fit)[15,5]}))
tfmc.srl2 <- t(sapply(1:k, function(x) {parameterEstimates(tfmc.fit.all[[x]]$fit)[16,5]}))
tfmc.srlcr <- t(sapply(1:k, function(x) {parameterEstimates(tfmc.fit.all[[x]]$fit)[17,5]}))
## Standard errors
tfmc.srl1.se <- t(sapply(1:k, function(x) {parameterEstimates(tfmc.fit.all[[x]]$fit)[15,6]}))
tfmc.srl2.se <- t(sapply(1:k, function(x) {parameterEstimates(tfmc.fit.all[[x]]$fit)[16,6]}))
tfmc.srlcr.se <- t(sapply(1:k, function(x) {parameterEstimates(tfmc.fit.all[[x]]$fit)[17,6]}))
## Lower 95% CI bound
tfmc.srl1.ci.low <- t(sapply(1:k, function(x) {parameterEstimates(tfmc.fit.all[[x]]$fit)[15,9]}))
tfmc.srl2.ci.low <- t(sapply(1:k, function(x) {parameterEstimates(tfmc.fit.all[[x]]$fit)[16,9]}))
tfmc.srlcr.ci.low <- t(sapply(1:k, function(x) {parameterEstimates(tfmc.fit.all[[x]]$fit)[17,9]}))
## Upper 95% CI bound
tfmc.srl1.ci.upp <- t(sapply(1:k, function(x) {parameterEstimates(tfmc.fit.all[[x]]$fit)[15,10]}))
tfmc.srl2.ci.upp <- t(sapply(1:k, function(x) {parameterEstimates(tfmc.fit.all[[x]]$fit)[16,10]}))
tfmc.srlcr.ci.upp <- t(sapply(1:k, function(x) {parameterEstimates(tfmc.fit.all[[x]]$fit)[17,10]}))
## Factor correlation
tfmc.fcorr <- t(sapply(1:k, function(x) {parameterEstimates(tfmc.fit.all[[x]]$fit)[14,5]}))
## Save these statistics
tfmc.srl.summary <- data.frame(names.studies,
TTCT1$n,
t(tfmc.srl1 ),
t(tfmc.srl1.se),
t(tfmc.srl1.ci.low),
t(tfmc.srl1.ci.upp),
t(tfmc.srl2),
t(tfmc.srl2.se),
t(tfmc.srl2.ci.low),
t(tfmc.srl2.ci.upp),
t(tfmc.srlcr),
t(tfmc.srlcr.se),
t(tfmc.srlcr.ci.low),
t(tfmc.srlcr.ci.upp),
t(tfmc.fcorr))
colnames(tfmc.srl.summary) <- c("Study",
"N",
"Omega Factor 1",
"SE",
"Lower 95% CI",
"Upper 95% CI",
"Omega Factor 2",
"SE",
"Lower 95% CI",
"Upper 95% CI",
"Composite reliability",
"SE",
"Lower 95% CI",
"Upper 95% CI",
"Factor correlation")
tfmc.srl.summary
## Study N Omega Factor 1 SE Lower 95% CI Upper 95% CI
## 1 Acar 477 0.768526179 0.019834695 0.7296509 0.8074015
## 2 Acaretal 375 0.835859315 0.014797985 0.8068558 0.8648628
## 3 Auth 30 0.653670574 0.107856677 0.4422754 0.8650658
## 4 Balcia 264 0.523362747 0.040893434 0.4432131 0.6035124
## 5 Balcib 105 0.410740317 0.106384992 0.2022296 0.6192511
## 6 Barkul 599 0.787772957 0.028512584 0.7318893 0.8436566
## 7 Berman 13 0.683443767 0.159833252 0.3701763 0.9967112
## 8 Callans 60 0.856329746 0.040851555 0.7762622 0.9363973
## 9 Carter_a 24 0.927154283 0.025691873 0.8767991 0.9775094
## 10 Carter_b 24 0.847019015 0.227871788 0.4003985 1.2936395
## 11 Chi 203 0.593002702 0.049954691 0.4950933 0.6909121
## 12 Cho_F 24 0.817798140 0.062998939 0.6943225 0.9412738
## 13 Cho_M 35 0.882090358 0.034132973 0.8151910 0.9489898
## 14 Cockcroft 36 0.343777202 0.472594250 -0.5824905 1.2700449
## 15 Conway 25 0.807463911 0.069678278 0.6708970 0.9440308
## 16 Crawford 21 0.933745960 0.031927839 0.8711685 0.9963234
## 17 Digranes 17 0.913968974 0.038167446 0.8391622 0.9887758
## 18 Fishkin 116 0.669786264 0.051302282 0.5692356 0.7703369
## 19 Forsyth 45 0.937871024 0.016425512 0.9056776 0.9700644
## 20 Gao 319 0.544650902 0.086227062 0.3756490 0.7136528
## 21 Garcia 95 0.735378067 0.051965699 0.6335272 0.8372290
## 22 Gollmar 128 0.766058096 0.038435615 0.6907257 0.8413905
## 23 Hokanson 1758 0.804897564 0.008142107 0.7889393 0.8208558
## 24 Houtz 42 0.458329744 1.281344374 -2.0530591 2.9697186
## 25 Humble 125 0.001127804 0.106258653 -0.2071353 0.2093909
## 26 Ibrahim 99 0.758951858 0.043049709 0.6745760 0.8433277
## 27 Kim_1 500 0.889613868 0.008285288 0.8733750 0.9058527
## 28 Kim_2a 1000 0.878281651 0.006987244 0.8645869 0.8919764
## 29 Kim_2b 1000 0.824550915 0.009605933 0.8057236 0.8433782
## 30 Kim_2c 1000 0.888960256 0.005933625 0.8773306 0.9005899
## 31 Kim_3a 125 0.564555188 0.065229490 0.4367077 0.6924026
## 32 Kim_3b 137 0.596009927 0.061019415 0.4764141 0.7156058
## 33 Liu 1047 0.881255175 0.007114774 0.8673105 0.8951999
## 34 Miranda 12 0.664389696 0.166030810 0.3389753 0.9898041
## 35 Nguyen 187 0.776273251 0.028415615 0.7205797 0.8319668
## 36 Rose 12 0.716436389 0.150983978 0.4205132 1.0123595
## 37 Rose_b 19 0.993548228 0.063572049 0.8689493 1.1181472
## 38 Roskos_Y 39 0.658265502 0.504882906 -0.3312868 1.6478178
## 39 Roskos_O 31 0.314200161 0.418032551 -0.5051286 1.1335289
## 40 Rubenstein_a 371 0.875943499 0.011889541 0.8526404 0.8992466
## 41 Rubenstein_b 371 0.663651357 0.042377095 0.5805938 0.7467089
## 42 Samuels 51 0.659250825 0.072295638 0.5175540 0.8009477
## 43 Shore 18 0.105086770 0.441498475 -0.7602343 0.9704079
## 44 Stephens 84 0.871663728 0.051241046 0.7712331 0.9720943
## 45 Storer_a 43 0.716436134 0.079760447 0.5601085 0.8727637
## 46 Storer_b 46 0.835509219 0.049907087 0.7376931 0.9333253
## 47 Tannehill 199 0.772246618 0.031778095 0.7099627 0.8345305
## 48 Tisone 24 0.750704490 0.080076475 0.5937575 0.9076515
## 49 Trigani 107 0.857182140 0.022762679 0.8125681 0.9017962
## 50 Voss 120 0.877239537 0.020103505 0.8378374 0.9166417
## 51 Wan 95 0.149108396 0.583197331 -0.9939374 1.2921542
## 52 Warne 432 0.832182178 0.014113254 0.8045207 0.8598436
## 53 Yoon 163 0.807233506 0.028921209 0.7505490 0.8639180
## 54 Zbarskaya 125 0.648665154 0.047054882 0.5564393 0.7408910
## 55 Zhang 1067 0.912546014 0.004657329 0.9034178 0.9216742
## Omega Factor 2 SE Lower 95% CI Upper 95% CI Composite reliability
## 1 0.5661430 0.037231389 0.49317081 0.6391152 0.8049032
## 2 0.6079821 0.037758518 0.53397676 0.6819874 0.8424830
## 3 0.4304457 0.228896963 -0.01818406 0.8790755 0.7080218
## 4 0.3589215 0.070339441 0.22105873 0.4967843 0.5792982
## 5 0.3911985 0.120940859 0.15415875 0.6282382 0.5543792
## 6 0.8229706 0.020476067 0.78283822 0.8631029 0.9178338
## 7 0.7640589 0.105668421 0.55695259 0.9711652 0.6825554
## 8 0.6209308 0.082703511 0.45883493 0.7830267 0.8126529
## 9 0.7684078 0.076993231 0.61750383 0.9193117 0.9125341
## 10 0.4775192 0.735797596 -0.96461763 1.9196559 0.8488549
## 11 0.7425099 0.033753708 0.67635385 0.8086659 0.8036901
## 12 0.7974172 0.072746606 0.65483647 0.9399979 0.8789835
## 13 0.5326083 0.165911937 0.20742687 0.8577897 0.8283102
## 14 0.6753116 0.195492669 0.29215303 1.0584702 0.7281700
## 15 0.8246381 0.062864877 0.70142522 0.9478510 0.9091115
## 16 0.7211523 0.107084957 0.51126967 0.9310350 0.9031175
## 17 0.1955976 0.452136611 -0.69057391 1.0817690 0.8537584
## 18 0.4145218 0.066743116 0.28370768 0.5453359 0.6674901
## 19 0.7290754 0.074780379 0.58250858 0.8756423 0.9219511
## 20 0.2629411 0.100301499 0.06635377 0.4595284 0.6621673
## 21 0.7041132 0.056422518 0.59352706 0.8146993 0.8415844
## 22 0.6126398 0.059837349 0.49536079 0.7299189 0.6615778
## 23 0.6345411 0.015417964 0.60432247 0.6647598 0.8430808
## 24 0.7879058 0.439812817 -0.07411152 1.6499230 0.8128315
## 25 0.8493042 0.072976087 0.70627367 0.9923347 0.8239503
## 26 0.5848694 0.079054069 0.42992630 0.7398126 0.7830406
## 27 0.7072821 0.020200626 0.66768961 0.7468746 0.8731967
## 28 0.6546655 0.020281307 0.61491491 0.6944162 0.8832819
## 29 0.4826084 0.029316947 0.42514820 0.5400685 0.7778928
## 30 0.6794374 0.015380890 0.64929141 0.7095834 0.8706153
## 31 0.8472008 0.023755036 0.80064182 0.8937598 0.8387767
## 32 0.8589660 0.020294884 0.81918874 0.8987432 0.8404802
## 33 0.8470108 0.008347057 0.83065084 0.8633707 0.9254371
## 34 0.1303795 0.938401194 -1.70885300 1.9696121 0.5333744
## 35 0.2079270 0.102716523 0.00660629 0.4092477 0.6841580
## 36 0.5457923 0.212095395 0.13009299 0.9614917 0.8180478
## 37 0.9882795 0.088600698 0.81462535 1.1619337 0.7823249
## 38 0.3066629 0.903013544 -1.46321117 2.0765369 0.7052351
## 39 0.6699684 0.112883969 0.44871988 0.8912169 0.6355349
## 40 0.6740912 0.031196083 0.61294802 0.7352344 0.8837767
## 41 0.6008464 0.047419291 0.50790633 0.6937865 0.7939180
## 42 0.6433924 0.073962362 0.49842884 0.7883560 0.7680445
## 43 0.9003439 0.052944286 0.79657497 1.0041128 0.8075012
## 44 0.5430463 0.396553821 -0.23418488 1.3202775 0.8198361
## 45 0.5457923 0.112043736 0.32619063 0.7653940 0.8180476
## 46 0.3700022 0.227095886 -0.07509756 0.8151020 0.8158777
## 47 0.6777027 0.044607538 0.59027352 0.7651319 0.8392724
## 48 0.6648445 0.102731710 0.46349403 0.8661949 0.8010826
## 49 0.7005870 0.044817183 0.61274692 0.7884270 0.8574797
## 50 0.7123495 0.049526931 0.61527846 0.8094205 0.8922357
## 51 0.6114699 0.352081875 -0.07859790 1.3015377 0.6171624
## 52 0.6426562 0.030686589 0.58251154 0.7028008 0.8524045
## 53 0.7939201 0.027715595 0.73959848 0.8482416 0.8556028
## 54 0.7088408 0.040217202 0.63001652 0.7876651 0.7958534
## 55 0.5389738 0.068302045 0.40510422 0.6728433 0.8581444
## SE Lower 95% CI Upper 95% CI Factor correlation
## 1 0.014734698 0.77602375 0.8337827 0.6221182
## 2 0.013847621 0.81534219 0.8696239 0.4256405
## 3 0.093818456 0.52414099 0.8919026 0.4756440
## 4 0.039274769 0.50232103 0.6562753 0.3286031
## 5 0.071671866 0.41390493 0.6948535 0.4286476
## 6 0.005606417 0.90684544 0.9288222 0.8964628
## 7 0.116559034 0.45410389 0.9110069 -0.2555810
## 8 0.039229646 0.73576425 0.8895416 0.3046393
## 9 0.028867430 0.85595499 0.9691132 0.3155412
## 10 0.052077286 0.74678534 0.9509245 1.0626498
## 11 0.021633441 0.76128929 0.8460908 0.6051602
## 12 0.039679215 0.80121365 0.9567533 0.4926070
## 13 0.049017303 0.73223802 0.9243823 0.3944023
## 14 0.073562141 0.58399081 0.8723491 0.8396080
## 15 0.029530824 0.85123213 0.9669908 0.6654713
## 16 0.035981513 0.83259500 0.9736399 0.6492101
## 17 0.068628757 0.71924852 0.9882683 1.8872193
## 18 0.044358318 0.58054934 0.7544308 0.1409424
## 19 0.021161247 0.88047580 0.9634264 0.5991126
## 20 0.030943240 0.60151963 0.7228149 1.2698894
## 21 0.026490306 0.78966433 0.8935044 0.6792078
## 22 0.046748235 0.56995292 0.7532026 -0.3256691
## 23 0.006154373 0.83101841 0.8551431 0.5311592
## 24 0.092697734 0.63114733 0.9945158 0.8470350
## 25 0.024863836 0.77521811 0.8726826 0.9188285
## 26 0.037837034 0.70888135 0.8571998 0.4052477
## 27 0.008823746 0.85590243 0.8904909 0.1960032
## 28 0.006193187 0.87114352 0.8954204 0.6547173
## 29 0.011914261 0.75454131 0.8012444 0.2602787
## 30 0.006371707 0.85812695 0.8831036 0.2200003
## 31 0.022318890 0.79503245 0.8825209 0.4653317
## 32 0.020846923 0.79962097 0.8813394 0.4123712
## 33 0.003867541 0.91785681 0.9330173 0.5317694
## 34 0.311078740 -0.07632876 1.1430775 0.3290446
## 35 0.038487946 0.60872302 0.7595930 0.3713846
## 36 0.082036171 0.65725983 0.9788357 0.7106701
## 37 0.075736496 0.63388412 0.9307657 0.9965072
## 38 0.077288864 0.55375168 0.8567185 1.1226288
## 39 0.107921399 0.42401286 0.8470570 0.5035671
## 40 0.010125234 0.86393161 0.9036218 0.6921394
## 41 0.017410296 0.75979442 0.8280415 0.7771981
## 42 0.047824176 0.67431084 0.8617782 0.2400000
## 43 0.068962607 0.67233699 0.9426654 0.8649308
## 44 0.043676233 0.73423222 0.9054399 0.7635129
## 45 0.043337322 0.73310804 0.9029872 0.7106699
## 46 0.047857357 0.72207900 0.9096764 0.7013148
## 47 0.018905308 0.80221867 0.8763261 0.6336887
## 48 0.060289851 0.68291666 0.9192485 0.2600004
## 49 0.021163632 0.81599972 0.8989596 0.2800012
## 50 0.016376975 0.86013739 0.9243339 0.6807858
## 51 0.065714285 0.48836479 0.7459601 0.8782405
## 52 0.011747424 0.82937996 0.8754290 0.5602003
## 53 0.018001022 0.82032143 0.8908841 0.3064697
## 54 0.027128833 0.74268189 0.8490250 0.3270000
## 55 0.014981635 0.82878090 0.8875078 0.2958872
## Write out the results
write.table(tfmc.srl.summary, "TwoFactorModel3-Reliability.txt", sep='\t')
## Note: The standard errors of the derived parameters are identical
## to the asymptotic sampling errors.
Res assigned to
Adapt## Model 4
## Two-factor model with two correlated traits and Res assigned to Adapt
## Model estimation
tfm.fit.all <- lapply(1:k, FUN = tra_study_lavaan,
data = TTCT1,
para_names = para_names,
model = TwoFactorModel,
estimator = "ML",
fixed.x = FALSE)
head(tfm.fit.all, 5)
## [[1]]
## [[1]]$coefs
## L1 L2 L3 L4 L5
## 0.8002171 0.8122797 0.4981151 0.5156007 0.7470457
##
## [[1]]$vcoefs
## L1 L2 L3 L4 L5
## L1 0.0020041928 0.0002860722 0.0002688384 0.0002782756 0.0004031892
## L2 0.0002860722 0.0020015283 0.0002728912 0.0002824706 0.0004092673
## L3 0.0002688384 0.0002728912 0.0024895394 0.0002488667 0.0002489445
## L4 0.0002782756 0.0002824706 0.0002488667 0.0024713113 0.0002535638
## L5 0.0004031892 0.0004092673 0.0002489445 0.0002535638 0.0024480658
##
## [[1]]$fit
## lavaan 0.6.16 ended normally after 16 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 11
## Number of inequality constraints 5
##
## Number of observations 477
##
## Model Test User Model:
##
## Test statistic 58.274
## Degrees of freedom 4
## P-value (Chi-square) 0.000
##
##
## [[2]]
## [[2]]$coefs
## L1 L2 L3 L4 L5
## 0.8559405 0.8914171 0.3763517 0.4981037 0.7619132
##
## [[2]]$vcoefs
## L1 L2 L3 L4 L5
## L1 0.0021812266 0.0005938561 0.0002644743 0.0003500328 0.0005354197
## L2 0.0005938561 0.0021407548 0.0002754362 0.0003645409 0.0005576116
## L3 0.0002644743 0.0002754362 0.0033086306 0.0002395522 0.0002491501
## L4 0.0003500328 0.0003645409 0.0002395522 0.0031568366 0.0003054554
## L5 0.0005354197 0.0005576116 0.0002491501 0.0003054554 0.0033523641
##
## [[2]]$fit
## lavaan 0.6.16 ended normally after 21 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 11
## Number of inequality constraints 5
##
## Number of observations 375
##
## Model Test User Model:
##
## Test statistic 85.235
## Degrees of freedom 4
## P-value (Chi-square) 0.000
##
##
## [[3]]
## [[3]]$coefs
## L1 L2 L3 L4 L5
## 0.5400006 1.0000000 0.7651308 0.3827568 0.2172019
##
## [[3]]$vcoefs
## L1 L2 L3 L4 L5
## L1 0.0275242359 0.0087000184 0.001834831 0.0009178736 0.0005208637
## L2 0.0087000184 0.0161111333 0.003397832 0.0016997646 0.0009645616
## L3 0.0018348309 0.0033978323 0.098934551 -0.0177614703 -0.0084516627
## L4 0.0009178736 0.0016997646 -0.017761470 0.0517805816 0.0040403316
## L5 0.0005208637 0.0009645616 -0.008451663 0.0040403316 0.0488336913
##
## [[3]]$fit
## lavaan 0.6.16 ended normally after 43 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 11
## Number of inequality constraints 5
##
## Number of observations 30
##
## Model Test User Model:
##
## Test statistic 4.964
## Degrees of freedom 4
## P-value (Chi-square) 0.291
##
##
## [[4]]
## [[4]]$coefs
## L1 L2 L3 L4 L5
## 0.2920004 1.0000000 0.6261702 0.4715271 0.1182645
##
## [[4]]$vcoefs
## L1 L2 L3 L4 L5
## L1 0.003612652359 0.00055093578 0.00004356659 0.00003280708 0.000008228402
## L2 0.000550935783 0.00188676440 0.00014920048 0.00011235290 0.000028179429
## L3 0.000043566586 0.00014920048 0.01660434996 -0.00673301463 -0.000752408588
## L4 0.000032807081 0.00011235290 -0.00673301463 0.01114541774 0.000365149631
## L5 0.000008228402 0.00002817943 -0.00075240859 0.00036514963 0.007284998235
##
## [[4]]$fit
## lavaan 0.6.16 ended normally after 72 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 11
## Number of inequality constraints 5
##
## Number of observations 264
##
## Model Test User Model:
##
## Test statistic 22.035
## Degrees of freedom 4
## P-value (Chi-square) 0.000
##
##
## [[5]]
## [[5]]$coefs
## L1 L2 L3 L4 L5
## 0.7067616 0.6084091 0.4883365 0.7340460 -0.1865381
##
## [[5]]$vcoefs
## L1 L2 L3 L4 L5
## L1 0.0270488964 -0.0117067518 0.0004066690 0.0006112869 -0.0001553422
## L2 -0.0117067518 0.0224872239 0.0003500772 0.0005262205 -0.0001337249
## L3 0.0004066690 0.0003500772 0.0201440484 -0.0112781006 -0.0017229643
## L4 0.0006112869 0.0005262205 -0.0112781006 0.0328240430 0.0026200213
## L5 -0.0001553422 -0.0001337249 -0.0017229643 0.0026200213 0.0151928792
##
## [[5]]$fit
## lavaan 0.6.16 ended normally after 22 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 11
## Number of inequality constraints 5
##
## Number of observations 105
##
## Model Test User Model:
##
## Test statistic 5.338
## Degrees of freedom 4
## P-value (Chi-square) 0.254
## Extract relevant model parameters
## FIT INDICES
## Chi-squares and p values of the parameter-based models
tfm_model_fit <- t(sapply(tfm.fit.all, function(x) {
fitMeasures(x$fit, c("chisq", "pvalue", "ntotal",
"cfi", "srmr"))}))
row.names(tfm_model_fit) <- names(TTCT1$data)
options(scipen=50)
round(tfm_model_fit,4)
## chisq pvalue ntotal cfi srmr
## Acar 58.2737 0.0000 477 0.9180 0.0561
## Acaretal 85.2350 0.0000 375 0.8764 0.0887
## Auth 4.9636 0.2911 30 0.9336 0.0983
## Balcia 22.0349 0.0002 264 0.7692 0.0587
## Balcib 5.3376 0.2544 105 0.9693 0.0421
## Barkul 114.0180 0.0000 599 0.9608 0.0288
## Berman 6.7520 0.1496 13 0.8056 0.1312
## Callans 5.7929 0.2152 60 0.9804 0.0720
## Carter_a 8.5375 0.0738 24 0.9294 0.1234
## Carter_b 2.0228 0.7316 24 1.0000 0.0333
## Chi 56.2894 0.0000 203 0.8077 0.1096
## Cho_F 7.8447 0.0974 24 0.9149 0.0717
## Cho_M 10.2295 0.0367 35 0.9062 0.0962
## Cockcroft 8.3021 0.0811 36 0.8723 0.0992
## Conway 0.8890 0.9261 25 1.0000 0.0184
## Crawford 4.1617 0.3846 21 0.9977 0.0513
## Digranes 6.6504 0.1556 17 0.9507 0.0747
## Fishkin 2.0369 0.7290 116 1.0000 0.0310
## Forsyth 10.3382 0.0351 45 0.9603 0.0653
## Gao 12.8084 0.0123 319 0.9595 0.0356
## Garcia 13.5111 0.0090 95 0.9373 0.0476
## Gollmar 43.1792 0.0000 128 0.7400 0.1268
## Hokanson 283.9768 0.0000 1758 0.9149 0.0735
## Houtz 3.4475 0.4859 42 1.0000 0.0473
## Humble 8.2194 0.0839 125 0.9787 0.0538
## Ibrahim 42.7677 0.0000 99 0.7295 0.0975
## Kim_1 167.2994 0.0000 500 0.8649 0.0992
## Kim_2a 192.5836 0.0000 1000 0.9270 0.0605
## Kim_2b 77.5064 0.0000 1000 0.9491 0.0616
## Kim_2c 236.0753 0.0000 1000 0.9024 0.0848
## Kim_3a 64.7562 0.0000 125 0.7276 0.1798
## Kim_3b 51.0455 0.0000 137 0.8072 0.1601
## Liu 36.6795 0.0000 1047 0.9916 0.0299
## Miranda 1.3888 0.8461 12 1.0000 0.0638
## Nguyen 5.9355 0.2040 187 0.9898 0.0384
## Rose 5.0518 0.2820 12 0.9476 0.0882
## Rose_b 13.9349 0.0075 19 0.5519 0.1686
## Roskos_Y 8.9535 0.0623 39 0.8469 0.0889
## Roskos_O 2.1785 0.7030 31 1.0000 0.0618
## Rubenstein_a 40.5525 0.0000 371 0.9611 0.0427
## Rubenstein_b 15.3233 0.0041 371 0.9756 0.0357
## Samuels 4.9267 0.2949 51 0.9836 0.0861
## Shore 17.9608 0.0013 18 0.2736 0.2218
## Stephens 1.8280 0.7674 84 1.0000 0.0280
## Storer_a 18.1023 0.0012 43 0.8557 0.0882
## Storer_b 10.3482 0.0350 46 0.9109 0.0710
## Tannehill 7.1674 0.1273 199 0.9916 0.0201
## Tisone 3.5012 0.4777 24 1.0000 0.0752
## Trigani 21.8630 0.0002 107 0.9087 0.0915
## Voss 16.1637 0.0028 120 0.9589 0.0549
## Wan 7.2675 0.1224 95 0.9086 0.0558
## Warne 56.1459 0.0000 432 0.9356 0.0552
## Yoon 23.1916 0.0001 163 0.9369 0.0918
## Zbarskaya 4.3965 0.3550 125 0.9970 0.0372
## Zhang 129.4983 0.0000 1067 0.9493 0.0806
## Write out these indices
write.csv(round(tfm_model_fit,4), "TwoFactorModel4-Fit.csv")
write.table(round(tfm_model_fit,4), "TwoFactorModel4-Fit.txt", sep='\t')
head(tfm_model_fit, 5)
## chisq pvalue ntotal cfi srmr
## Acar 58.273738 0.000000000006685208 477 0.9179879 0.05611845
## Acaretal 85.235030 0.000000000000000000 375 0.8764455 0.08868591
## Auth 4.963578 0.291055121191334365 30 0.9335511 0.09825559
## Balcia 22.034942 0.000197235994077283 264 0.7692142 0.05869786
## Balcib 5.337602 0.254377491832347369 105 0.9693378 0.04205625
## Extract the scale reliability coefficients from the primary studies
## Point estimates
tfm.srl1 <- t(sapply(1:k, function(x) {parameterEstimates(tfm.fit.all[[x]]$fit)[14,5]}))
tfm.srl2 <- t(sapply(1:k, function(x) {parameterEstimates(tfm.fit.all[[x]]$fit)[15,5]}))
tfm.srlcr <- t(sapply(1:k, function(x) {parameterEstimates(tfm.fit.all[[x]]$fit)[16,5]}))
## Standard errors
tfm.srl1.se <- t(sapply(1:k, function(x) {parameterEstimates(tfm.fit.all[[x]]$fit)[14,6]}))
tfm.srl2.se <- t(sapply(1:k, function(x) {parameterEstimates(tfm.fit.all[[x]]$fit)[15,6]}))
tfm.srlcr.se <- t(sapply(1:k, function(x) {parameterEstimates(tfm.fit.all[[x]]$fit)[16,6]}))
## Lower 95% CI bound
tfm.srl1.ci.low <- t(sapply(1:k, function(x) {parameterEstimates(tfm.fit.all[[x]]$fit)[14,9]}))
tfm.srl2.ci.low <- t(sapply(1:k, function(x) {parameterEstimates(tfm.fit.all[[x]]$fit)[15,9]}))
tfm.srlcr.ci.low <- t(sapply(1:k, function(x) {parameterEstimates(tfm.fit.all[[x]]$fit)[16,9]}))
## Upper 95% CI bound
tfm.srl1.ci.upp <- t(sapply(1:k, function(x) {parameterEstimates(tfm.fit.all[[x]]$fit)[14,10]}))
tfm.srl2.ci.upp <- t(sapply(1:k, function(x) {parameterEstimates(tfm.fit.all[[x]]$fit)[15,10]}))
tfm.srlcr.ci.upp <- t(sapply(1:k, function(x) {parameterEstimates(tfm.fit.all[[x]]$fit)[16,10]}))
## Factor correlation
tfm.fcorr <- t(sapply(1:k, function(x) {parameterEstimates(tfm.fit.all[[x]]$fit)[13,5]}))
## Save these statistics
tfm.srl.summary <- data.frame(names.studies,
TTCT1$n,
t(tfm.srl1 ),
t(tfm.srl1.se),
t(tfm.srl1.ci.low),
t(tfm.srl1.ci.upp),
t(tfm.srl2),
t(tfm.srl2.se),
t(tfm.srl2.ci.low),
t(tfm.srl2.ci.upp),
t(tfm.srlcr),
t(tfm.srlcr.se),
t(tfm.srlcr.ci.low),
t(tfm.srlcr.ci.upp),
t(tfm.fcorr))
colnames(tfm.srl.summary) <- c("Study",
"N",
"Omega Factor 1",
"SE",
"Lower 95% CI",
"Upper 95% CI",
"Omega Factor 2",
"SE",
"Lower 95% CI",
"Upper 95% CI",
"Composite reliability",
"SE",
"Lower 95% CI",
"Upper 95% CI",
"Factor correlation")
tfm.srl.summary
## Study N Omega Factor 1 SE Lower 95% CI Upper 95% CI
## 1 Acar 477 0.7879230 0.019422465 0.74985562 0.8259903
## 2 Acaretal 375 0.8659270 0.013861703 0.83875860 0.8930955
## 3 Auth 30 0.7700003 0.073695681 0.62555945 0.9144412
## 4 Balcia 264 0.6460004 0.035022508 0.57735750 0.7146432
## 5 Balcib 105 0.6047810 0.079138763 0.44967187 0.7598901
## 6 Barkul 599 0.9744939 0.002080806 0.97041555 0.9785722
## 7 Berman 13 0.6949999 0.141042727 0.41856121 0.9714385
## 8 Callans 60 0.8827988 0.031949253 0.82017946 0.9454182
## 9 Carter_a 24 0.9279418 0.029174066 0.87076173 0.9851220
## 10 Carter_b 24 0.9099999 0.035050009 0.84130312 0.9786966
## 11 Chi 203 0.7165000 0.033685510 0.65047763 0.7825224
## 12 Cho_F 24 0.8050006 0.071425899 0.66500843 0.9449928
## 13 Cho_M 35 0.7476911 0.085012742 0.58106919 0.9143130
## 14 Cockcroft 36 0.5554435 0.188006684 0.18695714 0.9239298
## 15 Conway 25 0.9011436 0.039548341 0.82363032 0.9786570
## 16 Crawford 21 0.9700000 0.012895183 0.94472590 0.9952741
## 17 Digranes 17 0.8640321 0.065895715 0.73487891 0.9931854
## 18 Fishkin 116 0.7595687 0.052606411 0.65646200 0.8626753
## 19 Forsyth 45 0.9538664 0.013684640 0.92704499 0.9806878
## 20 Gao 319 0.4732834 0.058981047 0.35768271 0.5888842
## 21 Garcia 95 0.7710162 0.047072858 0.67875512 0.8632773
## 22 Gollmar 128 0.8359994 0.026507783 0.78404511 0.8879537
## 23 Hokanson 1758 0.8949419 0.005770018 0.88363288 0.9062509
## 24 Houtz 42 0.7823017 0.080033070 0.62543972 0.9391636
## 25 Humble 125 0.9132729 0.016844923 0.88025750 0.9462884
## 26 Ibrahim 99 0.7596899 0.048448655 0.66473228 0.8546475
## 27 Kim_1 500 0.9209904 0.007201180 0.90687639 0.9351045
## 28 Kim_2a 1000 0.9130688 0.005498046 0.90229281 0.9238448
## 29 Kim_2b 1000 0.8830057 0.007417871 0.86846695 0.8975445
## 30 Kim_2c 1000 0.9282173 0.004592202 0.91921677 0.9372179
## 31 Kim_3a 125 0.7300000 0.041266747 0.64911862 0.8108813
## 32 Kim_3b 137 0.7000003 0.042888383 0.61594059 0.7840600
## 33 Liu 1047 0.9692173 0.001912591 0.96546866 0.9729659
## 34 Miranda 12 0.6674744 0.201382393 0.27277217 1.0621766
## 35 Nguyen 187 0.8623294 0.021582766 0.82002798 0.9046309
## 36 Rose 12 0.8959024 0.060156839 0.77799720 1.0138077
## 37 Rose_b 19 0.8350002 0.069179887 0.69941013 0.9705903
## 38 Roskos_Y 39 0.4299804 0.188549800 0.06042962 0.7995313
## 39 Roskos_O 31 0.3140816 0.300832780 -0.27553980 0.9037030
## 40 Rubenstein_a 371 0.9059530 0.009765379 0.88681320 0.9250928
## 41 Rubenstein_b 371 0.7861099 0.023131314 0.74077339 0.8314465
## 42 Samuels 51 0.8750002 0.032745994 0.81081927 0.9391812
## 43 Shore 18 0.6299999 0.138441342 0.35865989 0.9013400
## 44 Stephens 84 0.9262282 0.016156380 0.89456231 0.9578942
## 45 Storer_a 43 0.8959024 0.031779111 0.83361644 0.9581883
## 46 Storer_b 46 0.8439369 0.046020784 0.75373784 0.9341360
## 47 Tannehill 199 0.9161898 0.012441007 0.89180584 0.9405737
## 48 Tisone 24 0.8400000 0.059866512 0.72266381 0.9573362
## 49 Trigani 107 0.8600006 0.025102314 0.81080093 0.9092002
## 50 Voss 120 0.8378753 0.029424061 0.78020522 0.8955454
## 51 Wan 95 0.4282581 0.118440347 0.19611924 0.6603969
## 52 Warne 432 0.8564004 0.013961649 0.82903610 0.8837648
## 53 Yoon 163 0.8650001 0.019668799 0.82644992 0.9035502
## 54 Zbarskaya 125 0.8070001 0.031014799 0.74621216 0.8677879
## 55 Zhang 1067 0.8821890 0.007137126 0.86820044 0.8961775
## Omega Factor 2 SE Lower 95% CI Upper 95% CI Composite reliability
## 1 0.61657373 0.029900377 0.55797007 0.6751774 0.7961029
## 2 0.56882295 0.037500185 0.49532393 0.6423220 0.8033699
## 3 0.45624463 0.174095303 0.11502411 0.7974652 0.6874343
## 4 0.38402741 0.063634609 0.25930587 0.5087490 0.5647680
## 5 0.32904400 0.104533434 0.12416223 0.5339258 0.5565458
## 6 0.77863942 0.014326462 0.75056007 0.8067188 0.9172739
## 7 0.76409053 0.105262005 0.55778079 0.9704003 0.6762776
## 8 0.65864387 0.065378406 0.53050455 0.7867832 0.8232824
## 9 0.62746975 0.110753332 0.41039721 0.8445423 0.8533497
## 10 0.60965463 0.137095073 0.34095323 0.8783560 0.8498451
## 11 0.73092237 0.032558180 0.66710951 0.7947352 0.8028454
## 12 0.78704960 0.071398319 0.64711146 0.9269877 0.8653867
## 13 0.53593998 0.122019197 0.29678675 0.7750932 0.7712868
## 14 0.64197605 0.095900723 0.45401408 0.8299380 0.7316390
## 15 0.83260782 0.056803611 0.72127479 0.9439409 0.9084899
## 16 0.75090462 0.088968879 0.57652882 0.9252804 0.9017108
## 17 0.74279966 0.102234527 0.54242367 0.9431757 0.8840397
## 18 0.13501415 0.133848305 -0.12732370 0.3973520 0.5451633
## 19 0.72290929 0.067145839 0.59130587 0.8545127 0.8942712
## 20 0.52320575 0.045809452 0.43342088 0.6129906 0.6757915
## 21 0.73147909 0.047424678 0.63852843 0.8244298 0.8370563
## 22 0.57767217 0.063700177 0.45282212 0.7025222 0.7373011
## 23 0.66848336 0.013636458 0.64175639 0.6952103 0.8356207
## 24 0.63128965 0.097167364 0.44084511 0.8217342 0.7921521
## 25 0.45739326 0.080424792 0.29976356 0.6150230 0.7720023
## 26 0.59575313 0.068000334 0.46247492 0.7290313 0.7734210
## 27 0.60299308 0.028874546 0.54640001 0.6595862 0.8330267
## 28 0.69120730 0.016601296 0.65866936 0.7237452 0.8681365
## 29 0.45982149 0.030343008 0.40035029 0.5192927 0.7583341
## 30 0.57274705 0.022273656 0.52909149 0.6164026 0.8274552
## 31 0.81414657 0.027904399 0.75945495 0.8688382 0.7397523
## 32 0.83913813 0.022590664 0.79486124 0.8834150 0.7616337
## 33 0.84682710 0.008162806 0.83082829 0.8628259 0.9254409
## 34 0.04610459 0.177849064 -0.30247317 0.3946823 0.4571518
## 35 0.22396085 0.102912245 0.02225656 0.4256651 0.6642839
## 36 0.55869990 0.177142545 0.21150689 0.9058929 0.8163590
## 37 0.59599410 0.132096970 0.33708880 0.8548994 0.7568528
## 38 0.64891319 0.093567233 0.46552478 0.8323016 0.7144250
## 39 0.66999465 0.088558872 0.49642245 0.8435668 0.6355428
## 40 0.71959418 0.024493928 0.67158696 0.7676014 0.8753199
## 41 0.61687449 0.034273202 0.54970025 0.6840487 0.7938111
## 42 0.63343611 0.075028329 0.48638329 0.7804889 0.7764478
## 43 0.68826146 0.128942389 0.43553903 0.9409839 0.5965216
## 44 0.55117737 0.081168520 0.39208999 0.7102647 0.8204643
## 45 0.55870048 0.093579106 0.37528880 0.7421122 0.8163591
## 46 0.53121564 0.117131833 0.30164147 0.7607898 0.7952131
## 47 0.65969490 0.041772638 0.57782203 0.7415678 0.8386434
## 48 0.62199784 0.127650613 0.37180724 0.8721884 0.7710646
## 49 0.62354154 0.052907188 0.51984535 0.7272377 0.8171664
## 50 0.74098227 0.039078493 0.66438983 0.8175747 0.8692816
## 51 0.49301658 0.089663433 0.31727948 0.6687537 0.6127855
## 52 0.65742730 0.027808434 0.60292377 0.7119308 0.8352745
## 53 0.79446255 0.027477785 0.74060709 0.8483180 0.8557819
## 54 0.70948778 0.039708236 0.63166107 0.7873145 0.7953206
## 55 0.38759036 0.031732931 0.32539496 0.4497858 0.7712278
## SE Lower 95% CI Upper 95% CI Factor correlation
## 1 0.015185967 0.76633894 0.8258668 0.8029838
## 2 0.016598931 0.77083661 0.8359032 0.7857477
## 3 0.089172197 0.51266000 0.8622086 0.5250131
## 4 0.039675182 0.48700609 0.6425299 0.3553694
## 5 0.067293016 0.42465389 0.6884377 0.4998183
## 6 0.005562633 0.90637138 0.9281765 0.8720216
## 7 0.114536441 0.45179028 0.9007649 -0.2900000
## 8 0.034783979 0.75510706 0.8914578 0.5302387
## 9 0.047287275 0.76066833 0.9460310 0.8234923
## 10 0.050779068 0.75031999 0.9493703 1.0336723
## 11 0.021735104 0.76024536 0.8454454 0.5716607
## 12 0.043172322 0.78077054 0.9500029 0.7090588
## 13 0.061062399 0.65160666 0.8909669 0.9957951
## 14 0.072698823 0.58915192 0.8741261 0.7845056
## 15 0.029817101 0.85004946 0.9669303 0.6827169
## 16 0.035560859 0.83201280 0.9714088 0.7643346
## 17 0.045706132 0.79445729 0.9736220 1.0398209
## 18 0.070251030 0.40747384 0.6828528 0.6704365
## 19 0.026008062 0.84329635 0.9452461 0.8915926
## 20 0.029604286 0.61776817 0.7338148 1.0997318
## 21 0.027244187 0.78365869 0.8904539 0.7791342
## 22 0.036354007 0.66604852 0.8085536 0.2946672
## 23 0.006418958 0.82303978 0.8482016 0.6169859
## 24 0.051780409 0.69066433 0.8936398 0.7257213
## 25 0.033500218 0.70634311 0.8376615 0.6891124
## 26 0.036703874 0.70148273 0.8453593 0.7498885
## 27 0.012075119 0.80935995 0.8566935 0.7292714
## 28 0.006883575 0.85464495 0.8816281 0.8568125
## 29 0.012683112 0.73347561 0.7831925 0.6521377
## 30 0.008944629 0.80992409 0.8449864 0.7642222
## 31 0.032991000 0.67509111 0.8044135 -0.2595952
## 32 0.028219152 0.70632520 0.8169422 -0.2178581
## 33 0.003867127 0.91786152 0.9330204 0.5310282
## 34 0.225939266 0.01431894 0.8999846 0.6841114
## 35 0.041725233 0.58250396 0.7460639 0.8047517
## 36 0.081647631 0.65633258 0.9763854 0.7107647
## 37 0.079579629 0.60087957 0.9128260 0.3400015
## 38 0.074331273 0.56873837 0.8601116 0.9707069
## 39 0.105000135 0.42974630 0.8413393 0.5037385
## 40 0.010612929 0.85451889 0.8961208 0.8397992
## 41 0.017417539 0.75967335 0.8279488 0.7905793
## 42 0.045035613 0.68817960 0.8647160 0.2399999
## 43 0.136849912 0.32830071 0.8647425 -0.2906585
## 44 0.032228515 0.75729762 0.8836311 0.7700793
## 45 0.043132015 0.73182188 0.9008963 0.7107627
## 46 0.049547402 0.69810200 0.8923242 0.9521721
## 47 0.018983592 0.80143623 0.8758505 0.6041018
## 48 0.072799427 0.62838038 0.9137489 0.3688393
## 49 0.026912805 0.76441824 0.8699145 0.6899985
## 50 0.019220322 0.83161048 0.9069528 0.9260633
## 51 0.064908872 0.48556644 0.7400045 0.8372834
## 52 0.012890119 0.81001034 0.8605387 0.8128623
## 53 0.017943182 0.82061395 0.8909499 0.3176184
## 54 0.026779849 0.74283304 0.8478081 0.3269999
## 55 0.012018395 0.74767218 0.7947834 1.0418061
## Write out the results
write.table(tfm.srl.summary, "TwoFactorModel4-Reliability.txt", sep='\t')
## Note: The standard errors of the derived parameters are identical
## to the asymptotic sampling errors.
## Create effect size and study identifiers
esid <- as.vector(seq(1:length(TTCT1$data)))
studid <- as.vector(as.numeric(as.factor(names.studid)))
## Create a meta-analytic data set with effect sizes,
## sampling variances, and moderators
srel.meta1 <- data.frame(esid, studid, names.studies,
TTCT1$n,
t(tfm.srl1), t(tfm.srl1.se),
t(tfm.srl2), t(tfm.srl2.se),
t(tfm.srlcr), t(tfm.srlcr.se),
t(tfmc.srl1), t(tfmc.srl1.se),
t(tfmc.srl2), t(tfmc.srl2.se),
t(tfmc.srlcr), t(tfmc.srlcr.se),
t(tfm.fcorr), t(tfmc.fcorr),
mod.adults, mod.forms,
mod.scores, mod.validity)
## Column names
colnames(srel.meta1) <- c("ESID", "STUDID", "Reference",
"N","SREL1", "SE.SREL1",
"SREL2", "SE.SREL2",
"SRELCR", "SE.SRELCR",
"SREL1C", "SE.SREL1C",
"SREL2C", "SE.SREL2C",
"SRELCRC", "SE.SRELCRC",
"Fcorr", "FcorrC",
"Adults", "Forms",
"Scores", "Validity")
## Create sampling variances
srel.meta1$SREL1.vg <- srel.meta1$SE.SREL1^2
srel.meta1$SREL2.vg <- srel.meta1$SE.SREL2^2
srel.meta1$SRELCR.vg <- srel.meta1$SE.SRELCR^2
srel.meta1$SREL1C.vg <- srel.meta1$SE.SREL1C^2
srel.meta1$SREL2C.vg <- srel.meta1$SE.SREL2C^2
srel.meta1$SRELCRC.vg <- srel.meta1$SE.SRELCRC^2
## Identify the studies with poor model fit
tfm_model_fit
## chisq pvalue ntotal cfi srmr
## Acar 58.2737384 0.0000000000066852079428 477 0.9179879 0.05611845
## Acaretal 85.2350300 0.0000000000000000000000 375 0.8764455 0.08868591
## Auth 4.9635776 0.2910551211913343649940 30 0.9335511 0.09825559
## Balcia 22.0349422 0.0001972359940772827613 264 0.7692142 0.05869786
## Balcib 5.3376015 0.2543774918323473688275 105 0.9693378 0.04205625
## Barkul 114.0179567 0.0000000000000000000000 599 0.9608442 0.02876380
## Berman 6.7520142 0.1495880010679065952317 13 0.8056406 0.13120067
## Callans 5.7928546 0.2151613150094205950680 60 0.9803705 0.07195184
## Carter_a 8.5374948 0.0737588150888134341798 24 0.9293966 0.12344312
## Carter_b 2.0227827 0.7315683246857485055870 24 1.0000000 0.03325786
## Chi 56.2893634 0.0000000000174372738471 203 0.8077218 0.10964189
## Cho_F 7.8447267 0.0974345320442254747562 24 0.9149484 0.07170580
## Cho_M 10.2295462 0.0367335260865379042983 35 0.9061654 0.09617379
## Cockcroft 8.3021446 0.0811166222855811414050 36 0.8723006 0.09924377
## Conway 0.8889755 0.9261371061244323410477 25 1.0000000 0.01843786
## Crawford 4.1616946 0.3845649220312404859001 21 0.9976996 0.05125261
## Digranes 6.6504236 0.1555558127019329717200 17 0.9506538 0.07473993
## Fishkin 2.0368505 0.7289809937310370857588 116 1.0000000 0.03097716
## Forsyth 10.3381919 0.0351003685949619059770 45 0.9602724 0.06526681
## Gao 12.8083576 0.0122511651009710176297 319 0.9594559 0.03563730
## Garcia 13.5111291 0.0090304420932041384873 95 0.9372565 0.04764523
## Gollmar 43.1791907 0.0000000094987471221941 128 0.7400054 0.12680085
## Hokanson 283.9767705 0.0000000000000000000000 1758 0.9149149 0.07349493
## Houtz 3.4474977 0.4859062122440982456339 42 1.0000000 0.04730142
## Humble 8.2194499 0.0838622784140112820239 125 0.9787311 0.05375296
## Ibrahim 42.7677064 0.0000000115623308705182 99 0.7294550 0.09754886
## Kim_1 167.2993976 0.0000000000000000000000 500 0.8649442 0.09923085
## Kim_2a 192.5835800 0.0000000000000000000000 1000 0.9270304 0.06051507
## Kim_2b 77.5063974 0.0000000000000005551115 1000 0.9490579 0.06163331
## Kim_2c 236.0752688 0.0000000000000000000000 1000 0.9024048 0.08477319
## Kim_3a 64.7562446 0.0000000000002896571871 125 0.7275914 0.17983244
## Kim_3b 51.0455158 0.0000000002183865310812 137 0.8072334 0.16014229
## Liu 36.6794921 0.0000002097008866552841 1047 0.9915996 0.02992908
## Miranda 1.3887585 0.8461464699435627956348 12 1.0000000 0.06378383
## Nguyen 5.9355052 0.2040168367815755612327 187 0.9897562 0.03840829
## Rose 5.0518104 0.2820226174393694051901 12 0.9476006 0.08815172
## Rose_b 13.9348757 0.0075058326841783706840 19 0.5519365 0.16864979
## Roskos_Y 8.9535133 0.0622719885770953718307 39 0.8469183 0.08886656
## Roskos_O 2.1784895 0.7029692688101959463509 31 1.0000000 0.06181563
## Rubenstein_a 40.5525279 0.0000000332679327419427 371 0.9611431 0.04273534
## Rubenstein_b 15.3233317 0.0040755124077527238313 371 0.9756381 0.03565326
## Samuels 4.9266837 0.2949032714816962608140 51 0.9835969 0.08610035
## Shore 17.9607613 0.0012560801072869498540 18 0.2735955 0.22179542
## Stephens 1.8279847 0.7673585947114770489108 84 1.0000000 0.02798716
## Storer_a 18.1023205 0.0011785479448310764994 43 0.8557475 0.08815127
## Storer_b 10.3481802 0.0349537821149170646606 46 0.9109395 0.07096107
## Tannehill 7.1674124 0.1273013297674244759250 199 0.9915642 0.02005184
## Tisone 3.5011952 0.4776966312815904558420 24 1.0000000 0.07522753
## Trigani 21.8629651 0.0002134085734527557676 107 0.9087319 0.09152566
## Voss 16.1637294 0.0028071510715872438624 120 0.9589320 0.05493900
## Wan 7.2675425 0.1224074308794176335624 95 0.9086441 0.05579743
## Warne 56.1459071 0.0000000000186879400843 432 0.9355730 0.05516412
## Yoon 23.1916233 0.0001159388910124681260 163 0.9369490 0.09184230
## Zbarskaya 4.3964860 0.3549986083092668831540 125 0.9969846 0.03721615
## Zhang 129.4982963 0.0000000000000000000000 1067 0.9492744 0.08064859
### EXCLUSIONS DUE TO POOR MODEL FIT
## Exclude samples with at least two fails on the following three criteria:
## Significant chi-square value (p>.05), CFI >= .90, SRMR <= .10
fitexclude <- c(4,7,11,22,26,27,31,32,37,43,45)
## Data exclusions due to poor model fit
srel.meta <- srel.meta1[-fitexclude,]
## ADD NEW MODERATORS (see Table 1 in the manuscript)
srel.meta$LanguageEnglish <- c(1,1,1,0,0,1,1,1,1,1,1,1,1,1,1,1,0,1,1,
1,0,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0)
srel.meta$Culture <- c("Mixed","Western","Western","Eastern","Eastern","Western","Western","Western","Western","Western","African","Western","Western","Western","Western","Western","Eastern","Western","Western","Western","African","Western","Western","Western","Eastern","Western","Mixed","Western","Western","Western","Western","Western","Western","Western","Western","Western","Western","Western","Western","Eastern","Western","Eastern","Western","Eastern")
table(srel.meta$Culture)
##
## African Eastern Mixed Western
## 2 7 2 33
srel.meta$CultureWestern <- c(0,1,1,0,0,1,1,1,1,1,0,1,1,1,1,1,0,1,1,1,0,1,1,1,
0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0)
srel.meta$PropFemale <- c(69.83,52.94,53,52,62.1,75,54.17,79.17,
100,0,27.8,60,52,47.05,38.79,NA,31.66,NA,50,69.05,54,
51.27,51.27,51.27,47.94,58.33,70.59,75,49,73,48.9,48.9,
94.12,45,50,50,50,100,46,50.59,75,39.9,100,44.7)
## FURTHER EXCLUSIONS DUE TO SMALL SAMPLE SIZE
## Some power analysis to set a criterion
## Source for the size of parameters: Said-Metwaly et al. (2018), https://doi.org/10.1080/10400419.2018.1530534
## Run CFA power analysis
## Source: https://cran.r-project.org/web/packages/semPower/semPower.pdf
powerCFA <- semPower.powerCFA(type = 'a-priori',
Phi = .6,
loadings = list(c(.7, .8, .1),
c(.6, .6, .6)),
alpha = .05,
beta = .05)
summary(powerCFA)
##
## semPower: A priori power analysis
##
## F0 0.181217
## RMSEA 0.425696
## Mc 0.913375
##
## df 1
## Required Num Observations 73
##
## Critical Chi-Square 3.841459
## NCP 13.04764
## Alpha 0.050000
## Beta 0.049248
## Power (1 - Beta) 0.950752
## Implied Alpha/Beta Ratio 1.015269
## Criterion: N < 75 for the exclusion
which(srel.meta$N < 75)
## [1] 3 6 7 8 9 10 11 12 13 14 16 20 26 28 29 30 33 35 37
length(which(srel.meta$N < 75))
## [1] 19
srel.meta <- srel.meta[!(srel.meta$N < 75),]
## Inspect the data again
head(srel.meta, 5)
## ESID STUDID Reference N SREL1 SE.SREL1 SREL2 SE.SREL2
## 1 1 1 Acar 477 0.7879230 0.019422465 0.6165737 0.02990038
## 2 2 2 Acaretal 375 0.8659270 0.013861703 0.5688229 0.03750018
## 5 5 5 Balcib 105 0.6047810 0.079138763 0.3290440 0.10453343
## 6 6 6 Barkul 599 0.9744939 0.002080806 0.7786394 0.01432646
## 18 18 18 Fishkin 116 0.7595687 0.052606411 0.1350142 0.13384830
## SRELCR SE.SRELCR SREL1C SE.SREL1C SREL2C SE.SREL2C SRELCRC
## 1 0.7961029 0.015185967 0.7685262 0.01983469 0.5661430 0.03723139 0.8049032
## 2 0.8033699 0.016598931 0.8358593 0.01479798 0.6079821 0.03775852 0.8424830
## 5 0.5565458 0.067293016 0.4107403 0.10638499 0.3911985 0.12094086 0.5543792
## 6 0.9172739 0.005562633 0.7877730 0.02851258 0.8229706 0.02047607 0.9178338
## 18 0.5451633 0.070251030 0.6697863 0.05130228 0.4145218 0.06674312 0.6674901
## SE.SRELCRC Fcorr FcorrC Adults Forms Scores Validity SREL1.vg
## 1 0.014734698 0.8029838 0.6221182 1 A 0 1 0.000377232156
## 2 0.013847621 0.7857477 0.4256405 0 A 0 1 0.000192146808
## 5 0.071671866 0.4998183 0.4286476 0 Both 0 1 0.006262943736
## 6 0.005606417 0.8720216 0.8964628 1 A 0 0 0.000004329754
## 18 0.044358318 0.6704365 0.1409424 0 A 0 1 0.002767434440
## SREL2.vg SRELCR.vg SREL1C.vg SREL2C.vg SRELCRC.vg
## 1 0.0008940326 0.00023061360 0.0003934151 0.0013861763 0.00021711132
## 2 0.0014062639 0.00027552451 0.0002189803 0.0014257057 0.00019175659
## 5 0.0109272389 0.00452835001 0.0113177664 0.0146266914 0.00513685636
## 6 0.0002052475 0.00003094289 0.0008129674 0.0004192693 0.00003143191
## 18 0.0179153687 0.00493520728 0.0026319241 0.0044546436 0.00196766041
## LanguageEnglish Culture CultureWestern PropFemale
## 1 1 Mixed 0 69.83
## 2 1 Western 1 52.94
## 5 0 Eastern 0 52.00
## 6 0 Eastern 0 62.10
## 18 1 Western 1 38.79
View(srel.meta)
## Number of effect sizes
length(srel.meta$ESID)
## [1] 25
## Number of primary studies
length(unique(srel.meta$STUDID))
## [1] 25
## Proportion adult samples
prop.table(table(srel.meta$Adults))
##
## 0 1
## 0.68 0.32
## Proportion evidence against validity
prop.table(table(srel.meta$Validity))
##
## 0 1
## 0.8 0.2
## Distribution of test forms
prop.table(table(srel.meta$Forms))
##
## A B Both
## 0.86956522 0.08695652 0.04347826
## Distribution of test score types
prop.table(table(srel.meta$Scores))
##
## 0 1
## 0.5416667 0.4583333
## Distribution of the sample sizes
psych::describe(srel.meta$N)
## vars n mean sd median trimmed mad min max range skew kurtosis
## X1 1 25 453.48 441.71 319 396.81 300.97 84 1758 1674 1.26 0.76
## se
## X1 88.34
sum(unique(srel.meta$N))
## [1] 8746
## Distribution of English language
prop.table(table(srel.meta$LanguageEnglish))
##
## 0 1
## 0.32 0.68
## Distribution of cultures
prop.table(table(srel.meta$Culture))
##
## African Eastern Mixed Western
## 0.04 0.28 0.08 0.60
prop.table(table(srel.meta$CultureWestern))
##
## 0 1
## 0.4 0.6
## Distribution of the proportion of women in the samples
psych::describe(srel.meta$PropFemale)
## vars n mean sd median trimmed mad min max range skew kurtosis se
## X1 1 24 55.53 16.85 50.93 53.11 5.93 31.66 100 68.34 1.42 1.43 3.44
The meta-analytic data are hierarchical with multiple effect sizes derived from independent samples that are nested in primary studies.
## Reliability of factor 1
## Three-level REM
## Model specification and estimation
MLREMCSC.tfm.srel1 <- rma.mv(SREL1,
SREL1.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t")
## Summarize the results
summary(MLREMCSC.tfm.srel1, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 17.0172 -34.0345 -28.0345 -24.5003 -26.8345
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0048 0.0690 25 no STUDID
## sigma^2.2 0.0048 0.0690 25 no STUDID/ESID
##
## Test for Heterogeneity:
## Q(df = 24) = 1020.7004, p-val < .0001
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## 0.8460 0.0204 41.3845 24 <.0001 0.8038 0.8882 ***
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 95% confidence intervals
confint(MLREMCSC.tfm.srel1, digits=4)
##
## estimate ci.lb ci.ub
## sigma^2.1 0.0048 0.0000 0.0212
## sigma.1 0.0690 0.0000 0.1457
##
## estimate ci.lb ci.ub
## sigma^2.2 0.0048 0.0000 0.0212
## sigma.2 0.0690 0.0000 0.1457
## Variance distribution
summary(dmetar::var.comp(MLREMCSC.tfm.srel1))
## % of total variance I2
## Level 1 0.4905075 ---
## Level 2 49.7547462 49.75
## Level 3 49.7547462 49.75
## Total I2: 99.51%
plot(dmetar::var.comp(MLREMCSC.tfm.srel1))
## RVE standard errors
clubSandwich::conf_int(MLREMCSC.tfm.srel1, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.846 0.0204 23.4 0.804 0.888
# Profile plots
profile.rma.mv(MLREMCSC.tfm.srel1, sigma2=1)
profile.rma.mv(MLREMCSC.tfm.srel1, sigma2=2)
## Reliability of factor 2
## Three-level REM
## Model specification and estimation
MLREMCSC.tfm.srel2 <- rma.mv(SREL2,
SREL2.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t")
## Summarize the results
summary(MLREMCSC.tfm.srel2, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 9.3566 -18.7131 -12.7131 -9.1790 -11.5131
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0104 0.1019 25 no STUDID
## sigma^2.2 0.0104 0.1019 25 no STUDID/ESID
##
## Test for Heterogeneity:
## Q(df = 24) = 652.7154, p-val < .0001
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## 0.6017 0.0306 19.6647 24 <.0001 0.5386 0.6649 ***
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 95% confidence intervals
confint(MLREMCSC.tfm.srel2, digits=4)
##
## estimate ci.lb ci.ub
## sigma^2.1 0.0104 0.0000 0.0435
## sigma.1 0.1019 0.0000 0.2085
##
## estimate ci.lb ci.ub
## sigma^2.2 0.0104 0.0000 0.0435
## sigma.2 0.1019 0.0000 0.2085
## Variance distribution
summary(dmetar::var.comp(MLREMCSC.tfm.srel2))
## % of total variance I2
## Level 1 3.052523 ---
## Level 2 48.473739 48.47
## Level 3 48.473738 48.47
## Total I2: 96.95%
plot(dmetar::var.comp(MLREMCSC.tfm.srel2))
## RVE standard errors
clubSandwich::conf_int(MLREMCSC.tfm.srel2, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.602 0.0305 23.5 0.539 0.665
# Profile plots
profile.rma.mv(MLREMCSC.tfm.srel2, sigma2=1)
profile.rma.mv(MLREMCSC.tfm.srel2, sigma2=2)
## Composite reliability
## Three-level REM
## Model specification and estimation
MLREMCSC.tfm.srelcr <- rma.mv(SRELCR,
SRELCR.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t")
## Summarize the results
summary(MLREMCSC.tfm.srelcr, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 23.2586 -46.5173 -40.5173 -36.9831 -39.3173
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0030 0.0551 25 no STUDID
## sigma^2.2 0.0030 0.0551 25 no STUDID/ESID
##
## Test for Heterogeneity:
## Q(df = 24) = 693.1757, p-val < .0001
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## 0.7997 0.0165 48.4817 24 <.0001 0.7657 0.8337 ***
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 95% confidence intervals
confint(MLREMCSC.tfm.srelcr, digits=4)
##
## estimate ci.lb ci.ub
## sigma^2.1 0.0030 0.0000 0.0132
## sigma.1 0.0551 0.0000 0.1149
##
## estimate ci.lb ci.ub
## sigma^2.2 0.0030 0.0000 0.0132
## sigma.2 0.0551 0.0000 0.1149
## Variance distribution
summary(dmetar::var.comp(MLREMCSC.tfm.srelcr))
## % of total variance I2
## Level 1 2.141714 ---
## Level 2 48.929143 48.93
## Level 3 48.929143 48.93
## Total I2: 97.86%
plot(dmetar::var.comp(MLREMCSC.tfm.srelcr))
## RVE standard errors
clubSandwich::conf_int(MLREMCSC.tfm.srelcr, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.8 0.0164 23.5 0.766 0.834
# Profile plots
profile.rma.mv(MLREMCSC.tfm.srel1, sigma2=1)
profile.rma.mv(MLREMCSC.tfm.srel1, sigma2=2)
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfm.srel1.age <- rma.mv(SREL1,
SREL1.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ Adults)
## Summarize the results
summary(MLMEMCSC.tfm.srel1.age, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 17.1451 -34.2901 -26.2901 -21.7482 -24.0679
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0045 0.0671 25 no STUDID
## sigma^2.2 0.0045 0.0671 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 927.3901, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 3.0163, p-val = 0.0958
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.8694 0.0238 36.4585 23 <.0001 0.8200 0.9187 ***
## Adults -0.0754 0.0434 -1.7368 23 0.0958 -0.1653 0.0144 .
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfm.srel1.age, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.8694 0.0171 15.8 0.833 0.9056
## Adults -0.0754 0.0561 12.6 -0.197 0.0462
## Predicted subgroup values
predict(MLMEMCSC.tfm.srel1.age, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.8694 0.0238 0.8200 0.9187 0.6669 1.0718
## 2 0.7939 0.0363 0.7189 0.8690 0.5837 1.0042
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfm.srel1.validity <- rma.mv(SREL1,
SREL1.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ Validity)
## Summarize the results
summary(MLMEMCSC.tfm.srel1.validity, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 17.1637 -34.3274 -26.3274 -21.7854 -24.1052
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0040 0.0636 25 no STUDID
## sigma^2.2 0.0040 0.0636 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 851.3590, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 3.2775, p-val = 0.0833
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.8643 0.0210 41.1349 23 <.0001 0.8208 0.9077 ***
## Validity -0.0883 0.0488 -1.8104 23 0.0833 -0.1892 0.0126 .
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfm.srel1.validity, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.8643 0.0216 18.50 0.819 0.9095
## Validity -0.0883 0.0411 5.72 -0.190 0.0134
## Predicted subgroup values
predict(MLMEMCSC.tfm.srel1.validity, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.8643 0.0210 0.8208 0.9077 0.6732 1.0554
## 2 0.7760 0.0440 0.6850 0.8670 0.5688 0.9832
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfm.srel1.forms <- rma.mv(SREL1,
SREL1.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ factor(Forms))
## Summarize the results
summary(MLMEMCSC.tfm.srel1.forms, digits=4)
##
## Multivariate Meta-Analysis Model (k = 23; method: REML)
##
## logLik Deviance AIC BIC AICc
## 31.0809 -62.1618 -52.1618 -47.1831 -47.8760
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0011 0.0325 23 no STUDID
## sigma^2.2 0.0011 0.0325 23 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 20) = 850.5991, p-val < .0001
##
## Test of Moderators (coefficients 2:3):
## F(df1 = 2, df2 = 20) = 7.6967, p-val = 0.0033
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.8872 0.0110 80.8489 20 <.0001 0.8643 0.9100 ***
## factor(Forms)B -0.1068 0.0420 -2.5444 20 0.0193 -0.1943 -0.0192 *
## factor(Forms)Both -0.2824 0.0921 -3.0643 20 0.0061 -0.4746 -0.0902 **
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfm.srel1.forms, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.887 0.0112 18.52 0.864 0.9105
## factor(Forms)B -0.107 0.0133 1.15 -0.232 0.0181
## factor(Forms)Both -0.282 0.0112 18.52 -0.306 -0.2590
## Predicted subgroup values
predict(MLMEMCSC.tfm.srel1.forms, newmods = cbind(c(0,1,0),
c(0,0,1)))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.8872 0.0110 0.8643 0.9100 0.7887 0.9856
## 2 0.7804 0.0405 0.6959 0.8649 0.6527 0.9081
## 3 0.6048 0.0915 0.4139 0.7956 0.3912 0.8183
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfm.srel1.scores <- rma.mv(SREL1,
SREL1.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ Scores)
## Summarize the results
summary(MLMEMCSC.tfm.srel1.scores, digits=4)
##
## Multivariate Meta-Analysis Model (k = 24; method: REML)
##
## logLik Deviance AIC BIC AICc
## 18.5855 -37.1711 -29.1711 -24.8069 -26.8181
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0040 0.0635 24 no STUDID
## sigma^2.2 0.0040 0.0635 24 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 22) = 931.2839, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 22) = 0.1066, p-val = 0.7471
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.8605 0.0258 33.3413 22 <.0001 0.8070 0.9140 ***
## Scores -0.0125 0.0384 -0.3265 22 0.7471 -0.0921 0.0670
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfm.srel1.scores, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.8605 0.0210 11.8 0.8146 0.9064
## Scores -0.0125 0.0394 21.0 -0.0946 0.0695
## Predicted subgroup values
predict(MLMEMCSC.tfm.srel1.scores, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.8605 0.0258 0.8070 0.9140 0.6666 1.0544
## 2 0.8480 0.0284 0.7891 0.9068 0.6526 1.0434
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfm.srel1.lang <- rma.mv(SREL1,
SREL1.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ LanguageEnglish)
## Summarize the results
summary(MLMEMCSC.tfm.srel1.lang, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 16.2293 -32.4585 -24.4585 -19.9165 -22.2363
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0052 0.0722 25 no STUDID
## sigma^2.2 0.0052 0.0722 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 465.0746, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 1.0674, p-val = 0.3123
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.8108 0.0394 20.6022 23 <.0001 0.7294 0.8922 ***
## LanguageEnglish 0.0484 0.0468 1.0332 23 0.3123 -0.0485 0.1453
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfm.srel1.lang, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.8108 0.0665 6.56 0.6514 0.970
## LanguageEnglish 0.0484 0.0678 12.28 -0.0989 0.196
## Predicted subgroup values
predict(MLMEMCSC.tfm.srel1.lang, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.8108 0.0394 0.7294 0.8922 0.5844 1.0372
## 2 0.8592 0.0254 0.8067 0.9117 0.6415 1.0769
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfm.srel1.cult <- rma.mv(SREL1,
SREL1.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ CultureWestern)
## Summarize the results
summary(MLMEMCSC.tfm.srel1.cult, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 16.3265 -32.6530 -24.6530 -20.1110 -22.4308
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0051 0.0713 25 no STUDID
## sigma^2.2 0.0051 0.0713 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 534.3155, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 1.2869, p-val = 0.2683
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.8146 0.0343 23.7516 23 <.0001 0.7436 0.8855 ***
## CultureWestern 0.0493 0.0435 1.1344 23 0.2683 -0.0406 0.1392
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfm.srel1.cult, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.8146 0.0510 8.53 0.6983 0.931
## CultureWestern 0.0493 0.0529 17.98 -0.0618 0.160
## Predicted subgroup values
predict(MLMEMCSC.tfm.srel1.cult, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.8146 0.0343 0.7436 0.8855 0.5944 1.0348
## 2 0.8639 0.0267 0.8086 0.9192 0.6482 1.0796
## Three-level MEM
## Model specification and estimation
## Note: The proportion is arcsine-square-root transformed to stabilize the distribution
## and approximate normality.
## Source: Schwarzer et al. (2019), https://doi.org/10.1002/jrsm.1348
MLMEMCSC.tfm.srel1.female <- rma.mv(SREL1,
SREL1.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ asin(sqrt(PropFemale/100)))
## Summarize the results
summary(MLMEMCSC.tfm.srel1.female, digits=4)
##
## Multivariate Meta-Analysis Model (k = 24; method: REML)
##
## logLik Deviance AIC BIC AICc
## 14.6934 -29.3868 -21.3868 -17.0226 -19.0339
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0053 0.0727 24 no STUDID
## sigma^2.2 0.0053 0.0727 24 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 22) = 1001.2730, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 22) = 0.1342, p-val = 0.7176
##
## Model Results:
##
## estimate se tval df pval ci.lb
## intrcpt 0.8179 0.0840 9.7399 22 <.0001 0.6437
## asin(sqrt(PropFemale/100)) 0.0342 0.0933 0.3663 22 0.7176 -0.1593
## ci.ub
## intrcpt 0.9920 ***
## asin(sqrt(PropFemale/100)) 0.2276
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfm.srel1.female, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.8179 0.0863 3.66 0.569 1.066
## asin(sqrt(PropFemale/100)) 0.0342 0.0831 2.27 -0.286 0.354
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfm.srel2.age <- rma.mv(SREL2,
SREL2.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ Adults)
## Summarize the results
summary(MLMEMCSC.tfm.srel2.age, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 8.4208 -16.8415 -8.8415 -4.2996 -6.6193
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0110 0.1048 25 no STUDID
## sigma^2.2 0.0110 0.1048 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 648.6223, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 0.0133, p-val = 0.9090
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.6034 0.0380 15.8836 23 <.0001 0.5248 0.6820 ***
## Adults -0.0078 0.0675 -0.1155 23 0.9090 -0.1475 0.1319
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfm.srel2.age, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.6034 0.0387 15.7 0.521 0.686
## Adults -0.0078 0.0653 13.5 -0.148 0.133
## Predicted subgroup values
predict(MLMEMCSC.tfm.srel2.age, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.6034 0.0380 0.5248 0.6820 0.2868 0.9200
## 2 0.5956 0.0558 0.4802 0.7111 0.2679 0.9233
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfm.srel2.validity <- rma.mv(SREL2,
SREL2.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ Validity)
## Summarize the results
summary(MLMEMCSC.tfm.srel2.validity, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 9.8000 -19.5999 -11.5999 -7.0579 -9.3777
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0099 0.0997 25 no STUDID
## sigma^2.2 0.0099 0.0997 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 593.6872, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 2.7832, p-val = 0.1088
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.6259 0.0332 18.8696 23 <.0001 0.5573 0.6945 ***
## Validity -0.1299 0.0779 -1.6683 23 0.1088 -0.2909 0.0312
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfm.srel2.validity, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.626 0.0324 18.76 0.558 0.6937
## Validity -0.130 0.0838 5.57 -0.339 0.0791
## Predicted subgroup values
predict(MLMEMCSC.tfm.srel2.validity, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.6259 0.0332 0.5573 0.6945 0.3263 0.9255
## 2 0.4960 0.0704 0.3503 0.6417 0.1700 0.8220
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfm.srel2.forms <- rma.mv(SREL2,
SREL2.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ factor(Forms))
## Summarize the results
summary(MLMEMCSC.tfm.srel2.forms, digits=4)
##
## Multivariate Meta-Analysis Model (k = 23; method: REML)
##
## logLik Deviance AIC BIC AICc
## 7.5300 -15.0600 -5.0600 -0.0814 -0.7743
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0107 0.1034 23 no STUDID
## sigma^2.2 0.0107 0.1034 23 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 20) = 604.3319, p-val < .0001
##
## Test of Moderators (coefficients 2:3):
## F(df1 = 2, df2 = 20) = 1.3933, p-val = 0.2713
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.6122 0.0344 17.7976 20 <.0001 0.5405 0.6840 ***
## factor(Forms)B 0.0606 0.1128 0.5371 20 0.5972 -0.1748 0.2959
## factor(Forms)Both -0.2832 0.1830 -1.5472 20 0.1375 -0.6650 0.0986
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfm.srel2.forms, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.6122 0.0350 18.66 0.539 0.686
## factor(Forms)B 0.0606 0.0671 1.21 -0.507 0.628
## factor(Forms)Both -0.2832 0.0350 18.66 -0.356 -0.210
## Predicted subgroup values
predict(MLMEMCSC.tfm.srel2.forms, newmods = cbind(c(0,1,0),
c(0,0,1)))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.6122 0.0344 0.5405 0.6840 0.2988 0.9257
## 2 0.6728 0.1075 0.4487 0.8970 0.2943 1.0514
## 3 0.3290 0.1798 -0.0460 0.7041 -0.1544 0.8125
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfm.srel2.scores <- rma.mv(SREL2,
SREL2.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ Scores)
## Summarize the results
summary(MLMEMCSC.tfm.srel2.scores, digits=4)
##
## Multivariate Meta-Analysis Model (k = 24; method: REML)
##
## logLik Deviance AIC BIC AICc
## 8.2912 -16.5824 -8.5824 -4.2182 -6.2294
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0106 0.1028 24 no STUDID
## sigma^2.2 0.0106 0.1028 24 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 22) = 405.1244, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 22) = 1.0632, p-val = 0.3137
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.5759 0.0423 13.6288 22 <.0001 0.4883 0.6636 ***
## Scores 0.0650 0.0631 1.0311 22 0.3137 -0.0658 0.1959
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfm.srel2.scores, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.576 0.0409 11.7 0.4865 0.665
## Scores 0.065 0.0632 20.8 -0.0665 0.197
## Predicted subgroup values
predict(MLMEMCSC.tfm.srel2.scores, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.5759 0.0423 0.4883 0.6636 0.2619 0.8900
## 2 0.6410 0.0468 0.5439 0.7381 0.3242 0.9578
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfm.srel2.lang <- rma.mv(SREL2,
SREL2.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ LanguageEnglish)
## Summarize the results
summary(MLMEMCSC.tfm.srel2.lang, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 8.4234 -16.8469 -8.8469 -4.3049 -6.6247
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0110 0.1049 25 no STUDID
## sigma^2.2 0.0110 0.1049 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 408.9066, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 0.0140, p-val = 0.9069
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.5955 0.0561 10.6206 23 <.0001 0.4795 0.7115 ***
## LanguageEnglish 0.0080 0.0677 0.1183 23 0.9069 -0.1320 0.1480
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfm.srel2.lang, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.59547 0.0728 6.85 0.423 0.768
## LanguageEnglish 0.00801 0.0794 13.34 -0.163 0.179
## Predicted subgroup values
predict(MLMEMCSC.tfm.srel2.lang, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.5955 0.0561 0.4795 0.7115 0.2675 0.9235
## 2 0.6035 0.0379 0.5250 0.6819 0.2868 0.9201
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfm.srel2.cult <- rma.mv(SREL2,
SREL2.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ CultureWestern)
## Summarize the results
summary(MLMEMCSC.tfm.srel2.cult, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 8.7507 -17.5014 -9.5014 -4.9594 -7.2792
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0108 0.1038 25 no STUDID
## sigma^2.2 0.0108 0.1038 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 455.1148, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 0.6709, p-val = 0.4211
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.5692 0.0500 11.3830 23 <.0001 0.4657 0.6726 ***
## CultureWestern 0.0523 0.0639 0.8191 23 0.4211 -0.0798 0.1844
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfm.srel2.cult, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.5692 0.0661 8.78 0.4191 0.719
## CultureWestern 0.0523 0.0723 18.64 -0.0991 0.204
## Predicted subgroup values
predict(MLMEMCSC.tfm.srel2.cult, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.5692 0.0500 0.4657 0.6726 0.2485 0.8898
## 2 0.6215 0.0397 0.5393 0.7037 0.3070 0.9360
## Three-level MEM
## Model specification and estimation
## Note: The proportion is arcsine-square-root transformed to stabilize the distribution
## and approximate normality.
## Source: Schwarzer et al. (2019), https://doi.org/10.1002/jrsm.1348
MLMEMCSC.tfm.srel2.female <- rma.mv(SREL2,
SREL2.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ asin(sqrt(PropFemale/100)))
## Summarize the results
summary(MLMEMCSC.tfm.srel2.female, digits=4)
##
## Multivariate Meta-Analysis Model (k = 24; method: REML)
##
## logLik Deviance AIC BIC AICc
## 8.0386 -16.0772 -8.0772 -3.7130 -5.7242
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0111 0.1054 24 no STUDID
## sigma^2.2 0.0111 0.1054 24 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 22) = 644.3099, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 22) = 0.4098, p-val = 0.5287
##
## Model Results:
##
## estimate se tval df pval ci.lb
## intrcpt 0.5194 0.1229 4.2278 22 0.0003 0.2646
## asin(sqrt(PropFemale/100)) 0.0875 0.1367 0.6402 22 0.5287 -0.1959
## ci.ub
## intrcpt 0.7742 ***
## asin(sqrt(PropFemale/100)) 0.3709
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfm.srel2.female, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.5194 0.0929 3.61 0.250 0.789
## asin(sqrt(PropFemale/100)) 0.0875 0.0866 2.23 -0.251 0.426
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfm.srelcr.age <- rma.mv(SRELCR,
SRELCR.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ Adults)
## Summarize the results
summary(MLMEMCSC.tfm.srelcr.age, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 22.1519 -44.3038 -36.3038 -31.7618 -34.0816
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0031 0.0553 25 no STUDID
## sigma^2.2 0.0031 0.0553 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 690.3937, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 0.9183, p-val = 0.3479
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.8103 0.0200 40.5962 23 <.0001 0.7690 0.8516 ***
## Adults -0.0342 0.0357 -0.9583 23 0.3479 -0.1082 0.0397
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfm.srelcr.age, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.8103 0.0184 15.6 0.771 0.8494
## Adults -0.0342 0.0388 13.3 -0.118 0.0495
## Predicted subgroup values
predict(MLMEMCSC.tfm.srelcr.age, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.8103 0.0200 0.7690 0.8516 0.6432 0.9774
## 2 0.7761 0.0296 0.7147 0.8374 0.6029 0.9492
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfm.srelcr.validity <- rma.mv(SRELCR,
SRELCR.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ Validity)
## Summarize the results
summary(MLMEMCSC.tfm.srelcr.validity, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 23.7950 -47.5900 -39.5900 -35.0481 -37.3678
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0028 0.0527 25 no STUDID
## sigma^2.2 0.0028 0.0527 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 607.4349, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 4.2762, p-val = 0.0501
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.8157 0.0175 46.7277 23 <.0001 0.7796 0.8518 ***
## Validity -0.0856 0.0414 -2.0679 23 0.0501 -0.1712 0.0000 .
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfm.srelcr.validity, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.8157 0.0161 18.75 0.782 0.8494
## Validity -0.0856 0.0521 5.43 -0.217 0.0454
## Predicted subgroup values
predict(MLMEMCSC.tfm.srelcr.validity, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.8157 0.0175 0.7796 0.8518 0.6575 0.9739
## 2 0.7301 0.0375 0.6525 0.8078 0.5576 0.9026
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfm.srelcr.forms <- rma.mv(SRELCR,
SRELCR.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ factor(Forms))
## Summarize the results
summary(MLMEMCSC.tfm.srelcr.forms, digits=4)
##
## Multivariate Meta-Analysis Model (k = 23; method: REML)
##
## logLik Deviance AIC BIC AICc
## 24.2827 -48.5655 -38.5655 -33.5868 -34.2798
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0018 0.0419 23 no STUDID
## sigma^2.2 0.0018 0.0419 23 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 20) = 589.0590, p-val < .0001
##
## Test of Moderators (coefficients 2:3):
## F(df1 = 2, df2 = 20) = 4.2341, p-val = 0.0293
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.8207 0.0141 58.1555 20 <.0001 0.7913 0.8502 ***
## factor(Forms)B -0.0065 0.0470 -0.1379 20 0.8917 -0.1046 0.0916
## factor(Forms)Both -0.2642 0.0908 -2.9100 20 0.0087 -0.4536 -0.0748 **
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfm.srelcr.forms, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.82074 0.0143 18.52 0.791 0.851
## factor(Forms)B -0.00648 0.0259 1.21 -0.228 0.215
## factor(Forms)Both -0.26420 0.0143 18.52 -0.294 -0.234
## Predicted subgroup values
predict(MLMEMCSC.tfm.srelcr.forms, newmods = cbind(c(0,1,0),
c(0,0,1)))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.8207 0.0141 0.7913 0.8502 0.6936 0.9479
## 2 0.8143 0.0449 0.7207 0.9078 0.6592 0.9694
## 3 0.5565 0.0897 0.3695 0.7436 0.3323 0.7808
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfm.srelcr.scores <- rma.mv(SRELCR,
SRELCR.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ Scores)
## Summarize the results
summary(MLMEMCSC.tfm.srelcr.scores, digits=4)
##
## Multivariate Meta-Analysis Model (k = 24; method: REML)
##
## logLik Deviance AIC BIC AICc
## 22.1055 -44.2109 -36.2109 -31.8468 -33.8580
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0029 0.0534 24 no STUDID
## sigma^2.2 0.0029 0.0534 24 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 22) = 535.7287, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 22) = 0.0965, p-val = 0.7590
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.8006 0.0220 36.4337 22 <.0001 0.7550 0.8462 ***
## Scores 0.0101 0.0326 0.3106 22 0.7590 -0.0576 0.0778
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfm.srelcr.scores, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.8006 0.0225 11.6 0.751 0.8498
## Scores 0.0101 0.0323 21.0 -0.057 0.0772
## Predicted subgroup values
predict(MLMEMCSC.tfm.srelcr.scores, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.8006 0.0220 0.7550 0.8462 0.6374 0.9638
## 2 0.8108 0.0241 0.7607 0.8608 0.6462 0.9753
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfm.srelcr.lang <- rma.mv(SRELCR,
SRELCR.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ LanguageEnglish)
## Summarize the results
summary(MLMEMCSC.tfm.srelcr.lang, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 21.9336 -43.8672 -35.8672 -31.3252 -33.6449
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0032 0.0569 25 no STUDID
## sigma^2.2 0.0032 0.0569 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 417.2232, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 0.4465, p-val = 0.5106
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.7821 0.0307 25.4514 23 <.0001 0.7185 0.8456 ***
## LanguageEnglish 0.0246 0.0369 0.6682 23 0.5106 -0.0516 0.1009
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfm.srelcr.lang, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.7821 0.0443 6.74 0.6766 0.888
## LanguageEnglish 0.0246 0.0468 12.90 -0.0765 0.126
## Predicted subgroup values
predict(MLMEMCSC.tfm.srelcr.lang, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.7821 0.0307 0.7185 0.8456 0.6040 0.9601
## 2 0.8067 0.0204 0.7646 0.8488 0.6351 0.9783
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfm.srelcr.cult <- rma.mv(SRELCR,
SRELCR.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ CultureWestern)
## Summarize the results
summary(MLMEMCSC.tfm.srelcr.cult, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 22.4612 -44.9224 -36.9224 -32.3804 -34.7001
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0031 0.0555 25 no STUDID
## sigma^2.2 0.0031 0.0555 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 476.6963, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 1.5317, p-val = 0.2283
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.7735 0.0268 28.8471 23 <.0001 0.7180 0.8290 ***
## CultureWestern 0.0422 0.0341 1.2376 23 0.2283 -0.0284 0.1128
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfm.srelcr.cult, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.7735 0.0368 8.7 0.6898 0.857
## CultureWestern 0.0422 0.0395 18.4 -0.0406 0.125
## Predicted subgroup values
predict(MLMEMCSC.tfm.srelcr.cult, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.7735 0.0268 0.7180 0.8290 0.6021 0.9450
## 2 0.8158 0.0211 0.7721 0.8594 0.6478 0.9838
## Three-level MEM
## Model specification and estimation
## Note: The proportion is arcsine-square-root transformed to stabilize the distribution
## and approximate normality.
## Source: Schwarzer et al. (2019), https://doi.org/10.1002/jrsm.1348
MLMEMCSC.tfm.srelcr.female <- rma.mv(SRELCR,
SRELCR.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ asin(sqrt(PropFemale/100)))
## Summarize the results
summary(MLMEMCSC.tfm.srelcr.female, digits=4)
##
## Multivariate Meta-Analysis Model (k = 24; method: REML)
##
## logLik Deviance AIC BIC AICc
## 20.3507 -40.7014 -32.7014 -28.3373 -30.3485
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0034 0.0587 24 no STUDID
## sigma^2.2 0.0034 0.0587 24 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 22) = 685.9332, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 22) = 0.1632, p-val = 0.6901
##
## Model Results:
##
## estimate se tval df pval ci.lb
## intrcpt 0.7704 0.0684 11.2614 22 <.0001 0.6285
## asin(sqrt(PropFemale/100)) 0.0308 0.0761 0.4040 22 0.6901 -0.1271
## ci.ub
## intrcpt 0.9122 ***
## asin(sqrt(PropFemale/100)) 0.1887
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfm.srelcr.female, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.7704 0.0517 3.64 0.621 0.920
## asin(sqrt(PropFemale/100)) 0.0308 0.0461 2.26 -0.147 0.209
## Reliability of factor 1
## Egger's regression test (PET)
## Details: https://wviechtb.github.io/metafor/reference/regtest.html
## Three-level MEM
MLMEMCSC.tfm.srel1.pet <- rma.mv(SREL1,
SREL1.vg,
random = list(~ 1 | STUDID/ESID),
method = "REML",
data = srel.meta,
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ sqrt(SREL1.vg))
## Summarize the results
summary(MLMEMCSC.tfm.srel1.pet, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 39.1954 -78.3907 -70.3907 -65.8487 -68.1685
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0005 0.0220 25 no STUDID
## sigma^2.2 0.0005 0.0220 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 288.5573, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 83.6521, p-val < .0001
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.9499 0.0111 85.9372 23 <.0001 0.9270 0.9728 ***
## sqrt(SREL1.vg) -4.8102 0.5259 -9.1462 23 <.0001 -5.8982 -3.7223 ***
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
coef_test(MLMEMCSC.tfm.srel1.pet, vcov = "CR2")
## Coef. Estimate SE t-stat d.f. (Satt) p-val (Satt) Sig.
## intrcpt 0.95 0.011 86.12 13.28 <0.001 ***
## sqrt(SREL1.vg) -4.81 0.674 -7.14 8.45 <0.001 ***
## Result: The standard errors are significantly moderating the effect size.
## This can be considered evidence for publication or selection bias.
## Funnel plot test
## Three-level MEM
MLMEMCSC.tfm.srel1.fpt <- rma.mv(SREL1,
SREL1.vg,
random = list(~ 1 | STUDID/ESID),
method = "REML",
data = srel.meta,
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ N)
## Summarize the results
summary(MLMEMCSC.tfm.srel1.fpt, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 17.5793 -35.1586 -27.1586 -22.6167 -24.9364
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0042 0.0649 25 no STUDID
## sigma^2.2 0.0042 0.0649 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 1015.0106, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 4.0950, p-val = 0.0548
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.8045 0.0287 28.0528 23 <.0001 0.7452 0.8638 ***
## N 0.0001 0.0000 2.0236 23 0.0548 -0.0000 0.0002 .
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
coef_test(MLMEMCSC.tfm.srel1.fpt, vcov = "CR2")
## Coef. Estimate SE t-stat d.f. (Satt) p-val (Satt) Sig.
## intrcpt 0.8045152 0.0306352 26.26 16.13 <0.001 ***
## N 0.0000885 0.0000372 2.38 5.41 0.0593 .
## Contour-enhanced funnel plot
funnel(MLREMCSC.tfm.srel1,
main="Standard Error",
level = c(90, 95, 99),
shade = c("white", "gray55", "gray75"),
legend = TRUE)
## Result: No evidence for publication or selection bias.
## Precision-Effect Estimate with SE (PEESE)
## Three-level MEM
MLMEMCSC.tfm.srel1.peese <- rma.mv(SREL1,
SREL1.vg,
random = list(~ 1 | STUDID/ESID),
method = "REML",
data = srel.meta,
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ SREL1.vg)
## Summarize the results
summary(MLMEMCSC.tfm.srel1.peese, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 31.7384 -63.4768 -55.4768 -50.9349 -53.2546
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0011 0.0325 25 no STUDID
## sigma^2.2 0.0011 0.0325 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 733.1016, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 47.1798, p-val < .0001
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.8942 0.0112 79.8019 23 <.0001 0.8710 0.9174 ***
## SREL1.vg -48.9790 7.1307 -6.8688 23 <.0001 -63.7300 -34.2280 ***
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
coef_test(MLMEMCSC.tfm.srel1.peese, vcov = "CR2")
## Coef. Estimate SE t-stat d.f. (Satt) p-val (Satt) Sig.
## intrcpt 0.894 0.0117 76.39 19.42 <0.001 ***
## SREL1.vg -48.979 16.0820 -3.05 2.13 0.0859 .
## Result: The sampling variances are significantly moderating the effect size.
## This can be considered evidence for publication or selection bias.
## Influential effect sizes
## Analyses based on the REM with variation between effect sizes
## Plots indicating potential influential effect sizes
inf.tfm.srel1 <- influence.rma.uni(rma(SREL1,
SREL1.vg,
data = srel.meta,
method = "REML"))
plot.infl.rma.uni(inf.tfm.srel1)
# Increase max print options to show all effect sizes
options(max.print = 1000000)
print(inf.tfm.srel1)
##
## rstudent dffits cook.d cov.r tau2.del QE.del hat weight dfbs inf
## 1 -0.5806 -0.1003 0.0105 1.0837 0.0099 949.9482 0.0422 4.2245 -0.1004
## 2 0.2076 0.0850 0.0078 1.1240 0.0103 982.7664 0.0430 4.3050 0.0851
## 3 -2.0606 -0.4219 0.1611 0.8749 0.0080 1001.5586 0.0265 2.6491 -0.4346
## 4 1.3711 0.2698 0.0697 1.0042 0.0091 830.4254 0.0439 4.3899 0.2694
## 5 -0.7889 -0.1424 0.0204 1.0458 0.0096 1007.4539 0.0340 3.4027 -0.1423
## 6 -4.4880 -1.3351 1.0272 0.4654 0.0040 955.0759 0.0322 3.2165 -1.5049 *
## 7 -0.6963 -0.1222 0.0152 1.0585 0.0097 1006.0742 0.0356 3.5626 -0.1220
## 8 0.5027 0.1430 0.0219 1.1139 0.0102 922.1433 0.0438 4.3765 0.1433
## 9 0.6827 0.1722 0.0312 1.0975 0.0100 1015.6630 0.0426 4.2647 0.1723
## 10 0.6894 0.1756 0.0325 1.0992 0.0100 970.7886 0.0438 4.3779 0.1759
## 11 0.3810 0.1201 0.0155 1.1203 0.0103 934.4841 0.0437 4.3666 0.1203
## 12 0.8492 0.2014 0.0421 1.0825 0.0099 994.3384 0.0438 4.3821 0.2016
## 13 1.3083 0.2629 0.0669 1.0153 0.0092 871.8229 0.0439 4.3902 0.2626
## 14 0.1694 0.0758 0.0062 1.1212 0.0103 1003.7755 0.0419 4.1870 0.0758
## 15 0.6137 0.1621 0.0279 1.1052 0.0101 999.1130 0.0435 4.3483 0.1624
## 16 -0.5950 -0.1035 0.0111 1.0807 0.0099 969.7595 0.0416 4.1582 -0.1035
## 17 0.8177 0.1941 0.0392 1.0843 0.0099 1018.3396 0.0427 4.2746 0.1942
## 18 0.7173 0.1791 0.0337 1.0955 0.0100 1012.8056 0.0432 4.3216 0.1793
## 19 0.1452 0.0701 0.0053 1.1195 0.0103 1007.5334 0.0412 4.1192 0.0701
## 20 -0.0710 0.0234 0.0006 1.1143 0.0102 1005.8988 0.0403 4.0257 0.0234
## 21 -2.8836 -0.4781 0.2096 0.8208 0.0076 1001.2202 0.0178 1.7756 -0.5094
## 22 0.1126 0.0652 0.0046 1.1247 0.0103 974.4674 0.0430 4.3037 0.0654
## 23 0.1965 0.0817 0.0072 1.1218 0.0103 1001.5186 0.0422 4.2204 0.0818
## 24 -0.3728 -0.0461 0.0022 1.0977 0.0101 999.1161 0.0399 3.9888 -0.0460
## 25 0.3729 0.1185 0.0151 1.1207 0.0103 925.1126 0.0437 4.3685 0.1188
## Reliability of factor 2
## Egger's regression test (PET)
## Details: https://wviechtb.github.io/metafor/reference/regtest.html
## Three-level MEM
MLMEMCSC.tfm.srel2.pet <- rma.mv(SREL2,
SREL2.vg,
random = list(~ 1 | STUDID/ESID),
method = "REML",
data = srel.meta,
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ sqrt(SREL2.vg))
## Summarize the results
summary(MLMEMCSC.tfm.srel2.pet, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 18.3446 -36.6892 -28.6892 -24.1472 -26.4670
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0050 0.0706 25 no STUDID
## sigma^2.2 0.0050 0.0706 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 327.0981, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 24.8624, p-val < .0001
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.7775 0.0398 19.5277 23 <.0001 0.6951 0.8599 ***
## sqrt(SREL2.vg) -4.1215 0.8266 -4.9862 23 <.0001 -5.8314 -2.4116 ***
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
coef_test(MLMEMCSC.tfm.srel2.pet, vcov = "CR2")
## Coef. Estimate SE t-stat d.f. (Satt) p-val (Satt) Sig.
## intrcpt 0.778 0.0363 21.43 14.2 <0.001 ***
## sqrt(SREL2.vg) -4.121 0.6029 -6.84 7.8 <0.001 ***
## Result: The standard errors are significantly moderating the effect size.
## This can be considered evidence for publication or selection bias.
## Funnel plot test
## Three-level MEM
MLMEMCSC.tfm.srel2.fpt <- rma.mv(SREL2,
SREL2.vg,
random = list(~ 1 | STUDID/ESID),
method = "REML",
data = srel.meta,
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ N)
## Summarize the results
summary(MLMEMCSC.tfm.srel2.fpt, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 8.5900 -17.1800 -9.1800 -4.6380 -6.9578
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0110 0.1048 25 no STUDID
## sigma^2.2 0.0110 0.1048 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 647.7970, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 0.3989, p-val = 0.5339
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.5792 0.0466 12.4271 23 <.0001 0.4828 0.6756 ***
## N 0.0000 0.0001 0.6316 23 0.5339 -0.0001 0.0002
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
coef_test(MLMEMCSC.tfm.srel2.fpt, vcov = "CR2")
## Coef. Estimate SE t-stat d.f. (Satt) p-val (Satt) Sig.
## intrcpt 0.5792180 0.0459125 12.616 16.45 <0.001 ***
## N 0.0000449 0.0000657 0.683 5.36 0.523
## Contour-enhanced funnel plot
funnel(MLREMCSC.tfm.srel2,
main="Standard Error",
level = c(90, 95, 99),
shade = c("white", "gray55", "gray75"),
legend = TRUE)
## Result: No evidence for publication or selection bias.
## Precision-Effect Estimate with SE (PEESE)
## Three-level MEM
MLMEMCSC.tfm.srel2.peese <- rma.mv(SREL2,
SREL2.vg,
random = list(~ 1 | STUDID/ESID),
method = "REML",
data = srel.meta,
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ SREL2.vg)
## Summarize the results
summary(MLMEMCSC.tfm.srel2.peese, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 18.3353 -36.6705 -28.6705 -24.1286 -26.4483
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0052 0.0719 25 no STUDID
## sigma^2.2 0.0052 0.0719 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 461.1976, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 24.2103, p-val < .0001
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.6882 0.0273 25.1864 23 <.0001 0.6316 0.7447 ***
## SREL2.vg -32.5633 6.6180 -4.9204 23 <.0001 -46.2537 -18.8729 ***
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
coef_test(MLMEMCSC.tfm.srel2.peese, vcov = "CR2")
## Coef. Estimate SE t-stat d.f. (Satt) p-val (Satt) Sig.
## intrcpt 0.688 0.0285 24.19 18.11 < 0.001 ***
## SREL2.vg -32.563 4.0114 -8.12 4.21 0.00101 **
## Result: The sampling variances are significantly moderating the effect size.
## This can be considered evidence for publication or selection bias.
## Influential effect sizes
## Analyses based on the REM with variation between effect sizes
## Plots indicating potential influential effect sizes
inf.tfm.srel2 <- influence.rma.uni(rma(SREL2,
SREL2.vg,
data = srel.meta,
method = "REML"))
plot.infl.rma.uni(inf.tfm.srel2)
# Increase max print options to show all effect sizes
options(max.print = 1000000)
print(inf.tfm.srel2)
##
## rstudent dffits cook.d cov.r tau2.del QE.del hat weight dfbs inf
## 1 0.1056 0.0482 0.0025 1.1058 0.0221 639.0781 0.0432 4.3250 0.0482
## 2 -0.2152 -0.0221 0.0005 1.0976 0.0219 634.9549 0.0423 4.2250 -0.0222
## 3 -1.5995 -0.3080 0.0903 0.9613 0.0192 638.2960 0.0296 2.9554 -0.3110
## 4 1.2623 0.2636 0.0679 1.0256 0.0203 637.2752 0.0447 4.4671 0.2633
## 5 -2.5287 -0.4562 0.1896 0.8690 0.0173 633.2235 0.0242 2.4213 -0.4724
## 6 -0.5182 -0.0915 0.0087 1.0782 0.0215 632.9858 0.0410 4.0971 -0.0915
## 7 0.8661 0.1887 0.0364 1.0654 0.0213 652.6997 0.0407 4.0702 0.1887
## 8 0.4642 0.1228 0.0159 1.1001 0.0219 632.7336 0.0447 4.4712 0.1231
## 9 -0.8895 -0.1673 0.0280 1.0371 0.0208 641.5569 0.0344 3.4394 -0.1672
## 10 0.6213 0.1527 0.0244 1.0907 0.0217 648.0432 0.0445 4.4522 0.1530
## 11 -0.9915 -0.2155 0.0460 1.0350 0.0205 574.0571 0.0432 4.3197 -0.2155
## 12 -0.1923 -0.0169 0.0003 1.1026 0.0220 603.3660 0.0441 4.4060 -0.0170
## 13 1.8369 0.3452 0.1053 0.9370 0.0183 316.8720 0.0450 4.4968 0.3431
## 14 -2.3132 -0.4750 0.2002 0.8709 0.0172 628.9066 0.0299 2.9871 -0.4865
## 15 0.8157 0.1870 0.0360 1.0745 0.0214 652.6535 0.0438 4.3845 0.1871
## 16 0.1070 0.0480 0.0024 1.1044 0.0221 642.4575 0.0427 4.2696 0.0481
## 17 -0.3028 -0.0397 0.0016 1.0759 0.0216 648.0831 0.0342 3.4243 -0.0395
## 18 0.3897 0.1039 0.0114 1.0965 0.0219 650.1954 0.0416 4.1614 0.1040
## 19 0.1463 0.0538 0.0030 1.0972 0.0220 648.9658 0.0398 3.9752 0.0537
## 20 0.9473 0.2054 0.0429 1.0598 0.0211 652.5575 0.0420 4.2021 0.2055
## 21 -0.6447 -0.1096 0.0122 1.0538 0.0212 645.9692 0.0325 3.2517 -0.1094
## 22 0.3827 0.1051 0.0117 1.1009 0.0220 646.5277 0.0435 4.3492 0.1053
## 23 1.3643 0.2755 0.0733 1.0117 0.0200 646.2333 0.0435 4.3529 0.2752
## 24 0.7276 0.1673 0.0290 1.0785 0.0215 652.5489 0.0419 4.1928 0.1674
## 25 -1.5719 -0.3847 0.1337 0.9492 0.0187 536.6417 0.0430 4.3025 -0.3837
## Reliability of factor 1
## Egger's regression test (PET)
## Details: https://wviechtb.github.io/metafor/reference/regtest.html
## Three-level MEM
MLMEMCSC.tfm.srelcr.pet <- rma.mv(SRELCR,
SRELCR.vg,
random = list(~ 1 | STUDID/ESID),
method = "REML",
data = srel.meta,
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ sqrt(SRELCR.vg))
## Summarize the results
summary(MLMEMCSC.tfm.srelcr.pet, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 37.2606 -74.5212 -66.5212 -61.9792 -64.2989
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0009 0.0297 25 no STUDID
## sigma^2.2 0.0009 0.0297 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 305.7577, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 43.4582, p-val < .0001
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.8981 0.0163 55.2552 23 <.0001 0.8645 0.9317 ***
## sqrt(SRELCR.vg) -4.5673 0.6928 -6.5923 23 <.0001 -6.0005 -3.1341 ***
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
coef_test(MLMEMCSC.tfm.srelcr.pet, vcov = "CR2")
## Coef. Estimate SE t-stat d.f. (Satt) p-val (Satt) Sig.
## intrcpt 0.898 0.0145 61.99 13.14 <0.001 ***
## sqrt(SRELCR.vg) -4.567 0.5105 -8.95 7.61 <0.001 ***
## Result: The standard errors are significantly moderating the effect size.
## This can be considered evidence for publication or selection bias.
## Funnel plot test
## Three-level MEM
MLMEMCSC.tfm.srelcr.fpt <- rma.mv(SRELCR,
SRELCR.vg,
random = list(~ 1 | STUDID/ESID),
method = "REML",
data = srel.meta,
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ N)
## Summarize the results
summary(MLMEMCSC.tfm.srelcr.fpt, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 22.9486 -45.8972 -37.8972 -33.3552 -35.6750
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0029 0.0543 25 no STUDID
## sigma^2.2 0.0029 0.0543 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 690.1930, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 2.6099, p-val = 0.1198
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.7710 0.0242 31.8378 23 <.0001 0.7209 0.8211 ***
## N 0.0001 0.0000 1.6155 23 0.1198 -0.0000 0.0001
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
coef_test(MLMEMCSC.tfm.srelcr.fpt, vcov = "CR2")
## Coef. Estimate SE t-stat d.f. (Satt) p-val (Satt) Sig.
## intrcpt 0.7709769 0.0256130 30.10 16.40 <0.001 ***
## N 0.0000594 0.0000333 1.79 5.39 0.13
## Contour-enhanced funnel plot
funnel(MLREMCSC.tfm.srelcr,
main="Standard Error",
level = c(90, 95, 99),
shade = c("white", "gray55", "gray75"),
legend = TRUE)
## Result: No evidence for publication or selection bias.
## Precision-Effect Estimate with SE (PEESE)
## Three-level MEM
MLMEMCSC.tfm.srelcr.peese <- rma.mv(SRELCR,
SRELCR.vg,
random = list(~ 1 | STUDID/ESID),
method = "REML",
data = srel.meta,
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ SRELCR.vg)
## Summarize the results
summary(MLMEMCSC.tfm.srelcr.peese, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 36.3145 -72.6291 -64.6291 -60.0871 -62.4068
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0010 0.0317 25 no STUDID
## sigma^2.2 0.0010 0.0317 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 469.3450, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 38.8556, p-val < .0001
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.8477 0.0118 71.9485 23 <.0001 0.8233 0.8721 ***
## SRELCR.vg -65.4629 10.5019 -6.2334 23 <.0001 -87.1878 -43.7380 ***
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
coef_test(MLMEMCSC.tfm.srelcr.peese, vcov = "CR2")
## Coef. Estimate SE t-stat d.f. (Satt) p-val (Satt) Sig.
## intrcpt 0.848 0.0118 71.9 18.87 <0.001 ***
## SRELCR.vg -65.463 6.2780 -10.4 3.45 0.001 **
## Result: The sampling variances are significantly moderating the effect size.
## This can be considered evidence for publication or selection bias.
## Influential effect sizes
## Analyses based on the REM with variation between effect sizes
## Plots indicating potential influential effect sizes
inf.tfm.srelcr <- influence.rma.uni(rma(SRELCR,
SRELCR.vg,
data = srel.meta,
method = "REML"))
plot.infl.rma.uni(inf.tfm.srelcr)
# Increase max print options to show all effect sizes
options(max.print = 1000000)
print(inf.tfm.srelcr)
##
## rstudent dffits cook.d cov.r tau2.del QE.del hat weight dfbs inf
## 1 -0.0374 0.0264 0.0007 1.1135 0.0065 667.6021 0.0432 4.3158 0.0264
## 2 0.0529 0.0458 0.0022 1.1140 0.0065 675.7268 0.0429 4.2853 0.0459
## 3 -2.5662 -0.5146 0.2335 0.8308 0.0048 671.1618 0.0257 2.5665 -0.5366
## 4 1.5950 0.3015 0.0837 0.9705 0.0056 615.4980 0.0446 4.4569 0.3005
## 5 -2.6293 -0.5155 0.2352 0.8281 0.0048 671.4950 0.0247 2.4717 -0.5391
## 6 -1.6127 -0.3922 0.1382 0.9305 0.0054 648.9615 0.0391 3.9148 -0.3932
## 7 0.4559 0.1221 0.0157 1.0987 0.0064 691.5093 0.0399 3.9919 0.1221
## 8 0.4620 0.1308 0.0182 1.1094 0.0065 656.7034 0.0445 4.4494 0.1312
## 9 -0.3206 -0.0382 0.0015 1.0892 0.0064 684.2077 0.0378 3.7811 -0.0381
## 10 0.8852 0.2051 0.0433 1.0745 0.0063 692.8051 0.0444 4.4449 0.2054
## 11 -0.5197 -0.0889 0.0082 1.0879 0.0063 610.2809 0.0436 4.3640 -0.0890
## 12 0.3571 0.1101 0.0130 1.1135 0.0065 666.6957 0.0442 4.4214 0.1104
## 13 1.7305 0.3156 0.0890 0.9456 0.0054 416.1811 0.0447 4.4686 0.3140
## 14 -1.6402 -0.3692 0.1249 0.9335 0.0054 668.2991 0.0348 3.4818 -0.3722
## 15 0.9765 0.2185 0.0486 1.0635 0.0062 693.0805 0.0440 4.3981 0.2186
## 16 -0.0658 0.0198 0.0004 1.1116 0.0065 672.6476 0.0427 4.2665 0.0198
## 17 0.2507 0.0813 0.0070 1.1011 0.0065 690.5957 0.0383 3.8255 0.0811
## 18 0.4885 0.1321 0.0185 1.1026 0.0064 690.0260 0.0423 4.2287 0.1322
## 19 0.2166 0.0768 0.0063 1.1062 0.0065 688.9800 0.0400 4.0024 0.0768
## 20 0.8768 0.1987 0.0406 1.0721 0.0063 693.1537 0.0422 4.2228 0.1987
## 21 -1.9516 -0.3808 0.1343 0.9087 0.0053 677.1957 0.0265 2.6451 -0.3894
## 22 0.4532 0.1278 0.0174 1.1078 0.0065 684.7705 0.0436 4.3603 0.1280
## 23 0.7062 0.1712 0.0306 1.0884 0.0064 692.3350 0.0425 4.2541 0.1714
## 24 -0.0460 0.0227 0.0005 1.1054 0.0065 684.8985 0.0401 4.0066 0.0227
## 25 -0.3530 -0.0471 0.0023 1.1012 0.0064 620.3470 0.0438 4.3756 -0.0471
## Reliability of factor 1
#pdf(file = "ForestPlots-TwoFactorModel4.pdf", onefile = TRUE)
forest.rma(MLREMCSC.tfm.srel1,
addfit = TRUE,
order = "obs",
header = "Reference",
refline = 0,
rows = 1:MLREMCSC.tfm.srel1$k,
digits = 3,
level = 95,
cex = .6,
xlab = "Omega Coefficient",
main = "Reliability Factor 1 (Model 4)")
## Reliability of factor 2
forest.rma(MLREMCSC.tfm.srel2,
addfit = TRUE,
order = "obs",
header = "Reference",
refline = 0,
rows = 1:MLREMCSC.tfm.srel2$k,
digits = 3,
level = 95,
cex = .6,
xlab = "Omega Coefficient",
main = "Reliability Factor 2 (Model 4)")
## Composite reliability
forest.rma(MLREMCSC.tfm.srelcr,
addfit = TRUE,
order = "obs",
header = "Reference",
refline = 0,
rows = 1:MLREMCSC.tfm.srelcr$k,
digits = 3,
level = 95,
cex = .6,
xlab = "Omega Coefficient",
main = "Composite Reliability (Model 4)")
#dev.off()
## Reliability of factor 1
## Three-level REM
## Model specification and estimation
MLREMCSC.tfmc.srel1 <- rma.mv(SREL1C,
SREL1C.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t")
## Summarize the results
summary(MLREMCSC.tfmc.srel1, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 5.9701 -11.9402 -5.9402 -2.4061 -4.7402
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0117 0.1080 25 no STUDID
## sigma^2.2 0.0117 0.1080 25 no STUDID/ESID
##
## Test for Heterogeneity:
## Q(df = 24) = 425.6621, p-val < .0001
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## 0.7630 0.0322 23.6689 24 <.0001 0.6964 0.8295 ***
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 95% confidence intervals
confint(MLREMCSC.tfmc.srel1, digits=4)
##
## estimate ci.lb ci.ub
## sigma^2.1 0.0117 0.0000 0.0520
## sigma.1 0.1080 0.0000 0.2280
##
## estimate ci.lb ci.ub
## sigma^2.2 0.0117 0.0000 0.0520
## sigma.2 0.1080 0.0000 0.2280
## Variance distribution
summary(dmetar::var.comp(MLREMCSC.tfmc.srel1))
## % of total variance I2
## Level 1 0.6951387 ---
## Level 2 49.6524307 49.65
## Level 3 49.6524307 49.65
## Total I2: 99.3%
plot(dmetar::var.comp(MLREMCSC.tfmc.srel1))
## RVE standard errors
clubSandwich::conf_int(MLREMCSC.tfmc.srel1, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.763 0.0321 22.9 0.697 0.829
# Profile plots
profile.rma.mv(MLREMCSC.tfmc.srel1, sigma2=1)
profile.rma.mv(MLREMCSC.tfmc.srel1, sigma2=2)
## Reliability of factor 2
## Three-level REM
## Model specification and estimation
MLREMCSC.tfmc.srel2 <- rma.mv(SREL2C,
SREL2C.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t")
## Summarize the results
summary(MLREMCSC.tfmc.srel2, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 9.2464 -18.4929 -12.4929 -8.9587 -11.2929
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0095 0.0973 25 no STUDID
## sigma^2.2 0.0095 0.0973 25 no STUDID/ESID
##
## Test for Heterogeneity:
## Q(df = 24) = 494.9445, p-val < .0001
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## 0.6314 0.0304 20.7645 24 <.0001 0.5687 0.6942 ***
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 95% confidence intervals
confint(MLREMCSC.tfmc.srel2, digits=4)
##
## estimate ci.lb ci.ub
## sigma^2.1 0.0095 0.0000 0.0411
## sigma.1 0.0973 0.0000 0.2028
##
## estimate ci.lb ci.ub
## sigma^2.2 0.0095 0.0000 0.0411
## sigma.2 0.0973 0.0000 0.2028
## Variance distribution
summary(dmetar::var.comp(MLREMCSC.tfmc.srel2))
## % of total variance I2
## Level 1 4.020696 ---
## Level 2 47.989652 47.99
## Level 3 47.989652 47.99
## Total I2: 95.98%
plot(dmetar::var.comp(MLREMCSC.tfmc.srel2))
## RVE standard errors
clubSandwich::conf_int(MLREMCSC.tfmc.srel2, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.631 0.0303 22.1 0.569 0.694
# Profile plots
profile.rma.mv(MLREMCSC.tfmc.srel2, sigma2=1)
profile.rma.mv(MLREMCSC.tfmc.srel2, sigma2=2)
## Composite reliability
## Three-level REM
## Model specification and estimation
MLREMCSC.tfmc.srelcr <- rma.mv(SRELCRC,
SRELCRC.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t")
## Summarize the results
summary(MLREMCSC.tfmc.srelcr, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 24.4985 -48.9970 -42.9970 -39.4629 -41.7970
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0028 0.0529 25 no STUDID
## sigma^2.2 0.0028 0.0529 25 no STUDID/ESID
##
## Test for Heterogeneity:
## Q(df = 24) = 522.6646, p-val < .0001
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## 0.8182 0.0158 51.7398 24 <.0001 0.7855 0.8508 ***
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 95% confidence intervals
confint(MLREMCSC.tfmc.srelcr, digits=4)
##
## estimate ci.lb ci.ub
## sigma^2.1 0.0028 0.0000 0.0120
## sigma.1 0.0529 0.0000 0.1097
##
## estimate ci.lb ci.ub
## sigma^2.2 0.0028 0.0000 0.0120
## sigma.2 0.0529 0.0000 0.1097
## Variance distribution
summary(dmetar::var.comp(MLREMCSC.tfmc.srelcr))
## % of total variance I2
## Level 1 2.057698 ---
## Level 2 48.971151 48.97
## Level 3 48.971151 48.97
## Total I2: 97.94%
plot(dmetar::var.comp(MLREMCSC.tfmc.srelcr))
## RVE standard errors
clubSandwich::conf_int(MLREMCSC.tfmc.srelcr, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.818 0.0158 23.5 0.786 0.851
# Profile plots
profile.rma.mv(MLREMCSC.tfmc.srel1, sigma2=1)
profile.rma.mv(MLREMCSC.tfmc.srel1, sigma2=2)
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfmc.srel1.age <- rma.mv(SREL1C,
SREL1C.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ Adults)
## Summarize the results
summary(MLMEMCSC.tfmc.srel1.age, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 5.1516 -10.3032 -2.3032 2.2388 -0.0810
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0125 0.1117 25 no STUDID
## sigma^2.2 0.0125 0.1117 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 366.0896, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 0.0950, p-val = 0.7607
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.7686 0.0396 19.4138 23 <.0001 0.6867 0.8505 ***
## Adults -0.0225 0.0729 -0.3082 23 0.7607 -0.1733 0.1284
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfmc.srel1.age, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.7686 0.0437 15.8 0.676 0.861
## Adults -0.0225 0.0580 11.5 -0.149 0.104
## Predicted subgroup values
predict(MLMEMCSC.tfmc.srel1.age, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.7686 0.0396 0.6867 0.8505 0.4319 1.1054
## 2 0.7462 0.0612 0.6195 0.8728 0.3958 1.0965
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfmc.srel1.validity <- rma.mv(SREL1C,
SREL1C.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ Validity)
## Summarize the results
summary(MLMEMCSC.tfmc.srel1.validity, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 5.7403 -11.4806 -3.4806 1.0613 -1.2584
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0113 0.1065 25 no STUDID
## sigma^2.2 0.0113 0.1065 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 372.2444, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 1.3813, p-val = 0.2519
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.7820 0.0355 22.0076 23 <.0001 0.7085 0.8555 ***
## Validity -0.0936 0.0797 -1.1753 23 0.2519 -0.2584 0.0712
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfmc.srel1.validity, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.7820 0.0361 17.97 0.706 0.8580
## Validity -0.0936 0.0718 6.02 -0.269 0.0819
## Predicted subgroup values
predict(MLMEMCSC.tfmc.srel1.validity, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.7820 0.0355 0.7085 0.8555 0.4619 1.1022
## 2 0.6884 0.0713 0.5409 0.8359 0.3437 1.0331
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfmc.srel1.forms <- rma.mv(SREL1C,
SREL1C.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ factor(Forms))
## Summarize the results
summary(MLMEMCSC.tfmc.srel1.forms, digits=4)
##
## Multivariate Meta-Analysis Model (k = 23; method: REML)
##
## logLik Deviance AIC BIC AICc
## 7.6493 -15.2985 -5.2985 -0.3198 -1.0128
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0086 0.0926 23 no STUDID
## sigma^2.2 0.0086 0.0926 23 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 20) = 361.7420, p-val < .0001
##
## Test of Moderators (coefficients 2:3):
## F(df1 = 2, df2 = 20) = 2.8583, p-val = 0.0809
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.7954 0.0301 26.4088 20 <.0001 0.7325 0.8582 ***
## factor(Forms)B -0.0967 0.1030 -0.9390 20 0.3589 -0.3114 0.1181
## factor(Forms)Both -0.3846 0.1714 -2.2442 20 0.0363 -0.7421 -0.0271 *
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfmc.srel1.forms, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.7954 0.0305 18.8 0.731 0.859
## factor(Forms)B -0.0967 0.0471 1.2 -0.507 0.314
## factor(Forms)Both -0.3846 0.0305 18.8 -0.449 -0.321
## Predicted subgroup values
predict(MLMEMCSC.tfmc.srel1.forms, newmods = cbind(c(0,1,0),
c(0,0,1)))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.7954 0.0301 0.7325 0.8582 0.5151 1.0756
## 2 0.6987 0.0985 0.4933 0.9040 0.3569 1.0404
## 3 0.4107 0.1687 0.0588 0.7627 -0.0348 0.8562
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfmc.srel1.scores <- rma.mv(SREL1C,
SREL1C.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ Scores)
## Summarize the results
summary(MLMEMCSC.tfmc.srel1.scores, digits=4)
##
## Multivariate Meta-Analysis Model (k = 24; method: REML)
##
## logLik Deviance AIC BIC AICc
## 6.4130 -12.8261 -4.8261 -0.4619 -2.4732
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0120 0.1095 24 no STUDID
## sigma^2.2 0.0120 0.1095 24 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 22) = 419.4714, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 22) = 0.8849, p-val = 0.3571
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.7920 0.0439 18.0318 22 <.0001 0.7009 0.8831 ***
## Scores -0.0619 0.0658 -0.9407 22 0.3571 -0.1982 0.0745
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfmc.srel1.scores, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.7920 0.0308 11.9 0.725 0.8592
## Scores -0.0619 0.0692 20.9 -0.206 0.0821
## Predicted subgroup values
predict(MLMEMCSC.tfmc.srel1.scores, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.7920 0.0439 0.7009 0.8831 0.4582 1.1258
## 2 0.7301 0.0489 0.6286 0.8316 0.3934 1.0669
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfmc.srel1.lang <- rma.mv(SREL1C,
SREL1C.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ LanguageEnglish)
## Summarize the results
summary(MLMEMCSC.tfmc.srel1.lang, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 6.9770 -13.9541 -5.9541 -1.4121 -3.7319
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0113 0.1063 25 no STUDID
## sigma^2.2 0.0113 0.1063 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 341.4132, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 3.7666, p-val = 0.0646
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.6623 0.0610 10.8581 23 <.0001 0.5362 0.7885 ***
## LanguageEnglish 0.1386 0.0714 1.9408 23 0.0646 -0.0091 0.2864 .
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfmc.srel1.lang, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.662 0.108 5.95 0.397 0.928
## LanguageEnglish 0.139 0.110 10.64 -0.104 0.382
## Predicted subgroup values
predict(MLMEMCSC.tfmc.srel1.lang, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.6623 0.0610 0.5362 0.7885 0.3267 0.9980
## 2 0.8010 0.0372 0.7241 0.8779 0.4806 1.1214
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfmc.srel1.cult <- rma.mv(SREL1C,
SREL1C.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ CultureWestern)
## Summarize the results
summary(MLMEMCSC.tfmc.srel1.cult, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 6.5957 -13.1914 -5.1914 -0.6494 -2.9692
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0114 0.1067 25 no STUDID
## sigma^2.2 0.0114 0.1067 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 372.6575, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 3.0470, p-val = 0.0942
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.6888 0.0533 12.9302 23 <.0001 0.5786 0.7990 ***
## CultureWestern 0.1160 0.0665 1.7456 23 0.0942 -0.0215 0.2536 .
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfmc.srel1.cult, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.689 0.0809 7.93 0.502 0.876
## CultureWestern 0.116 0.0836 16.35 -0.061 0.293
## Predicted subgroup values
predict(MLMEMCSC.tfmc.srel1.cult, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.6888 0.0533 0.5786 0.7990 0.3577 1.0199
## 2 0.8048 0.0398 0.7226 0.8871 0.4819 1.1278
## Three-level MEM
## Model specification and estimation
## Note: The proportion is arcsine-square-root transformed to stabilize the distribution
## and approximate normality.
## Source: Schwarzer et al. (2019), https://doi.org/10.1002/jrsm.1348
MLMEMCSC.tfmc.srel1.female <- rma.mv(SREL1C,
SREL1C.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ asin(sqrt(PropFemale/100)))
## Summarize the results
summary(MLMEMCSC.tfmc.srel1.female, digits=4)
##
## Multivariate Meta-Analysis Model (k = 24; method: REML)
##
## logLik Deviance AIC BIC AICc
## 4.2226 -8.4452 -0.4452 3.9190 1.9078
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0135 0.1163 24 no STUDID
## sigma^2.2 0.0135 0.1163 24 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 22) = 369.2496, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 22) = 0.0049, p-val = 0.9446
##
## Model Results:
##
## estimate se tval df pval ci.lb
## intrcpt 0.7529 0.1333 5.6489 22 <.0001 0.4765
## asin(sqrt(PropFemale/100)) 0.0104 0.1476 0.0703 22 0.9446 -0.2956
## ci.ub
## intrcpt 1.0293 ***
## asin(sqrt(PropFemale/100)) 0.3164
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfmc.srel1.female, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.7529 0.114 3.74 0.426 1.079
## asin(sqrt(PropFemale/100)) 0.0104 0.119 2.28 -0.446 0.467
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfmc.srel2.age <- rma.mv(SREL2C,
SREL2C.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ Adults)
## Summarize the results
summary(MLMEMCSC.tfmc.srel2.age, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 8.6756 -17.3512 -9.3512 -4.8093 -7.1290
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0099 0.0996 25 no STUDID
## sigma^2.2 0.0099 0.0996 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 490.4978, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 0.7239, p-val = 0.4036
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.6482 0.0371 17.4756 23 <.0001 0.5715 0.7249 ***
## Adults -0.0577 0.0678 -0.8509 23 0.4036 -0.1980 0.0826
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfmc.srel2.age, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.6482 0.0309 15.0 0.582 0.714
## Adults -0.0577 0.0812 11.6 -0.235 0.120
## Predicted subgroup values
predict(MLMEMCSC.tfmc.srel2.age, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.6482 0.0371 0.5715 0.7249 0.3469 0.9495
## 2 0.5905 0.0568 0.4730 0.7079 0.2763 0.9046
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfmc.srel2.validity <- rma.mv(SREL2C,
SREL2C.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ Validity)
## Summarize the results
summary(MLMEMCSC.tfmc.srel2.validity, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 9.7565 -19.5130 -11.5130 -6.9710 -9.2908
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0082 0.0908 25 no STUDID
## sigma^2.2 0.0082 0.0908 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 428.6923, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 3.2051, p-val = 0.0866
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.6587 0.0320 20.5751 23 <.0001 0.5925 0.7249 ***
## Validity -0.1280 0.0715 -1.7903 23 0.0866 -0.2758 0.0199 .
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfmc.srel2.validity, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.659 0.0337 17.14 0.588 0.72973
## Validity -0.128 0.0542 5.93 -0.261 0.00514
## Predicted subgroup values
predict(MLMEMCSC.tfmc.srel2.validity, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.6587 0.0320 0.5925 0.7249 0.3849 0.9325
## 2 0.5307 0.0639 0.3985 0.6629 0.2340 0.8275
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfmc.srel2.forms <- rma.mv(SREL2C,
SREL2C.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ factor(Forms))
## Summarize the results
summary(MLMEMCSC.tfmc.srel2.forms, digits=4)
##
## Multivariate Meta-Analysis Model (k = 23; method: REML)
##
## logLik Deviance AIC BIC AICc
## 10.0585 -20.1171 -10.1171 -5.1384 -5.8313
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0077 0.0880 23 no STUDID
## sigma^2.2 0.0077 0.0880 23 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 20) = 457.5460, p-val < .0001
##
## Test of Moderators (coefficients 2:3):
## F(df1 = 2, df2 = 20) = 1.1039, p-val = 0.3509
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.6527 0.0301 21.6527 20 <.0001 0.5898 0.7156 ***
## factor(Forms)B -0.0015 0.1000 -0.0153 20 0.9880 -0.2102 0.2071
## factor(Forms)Both -0.2615 0.1761 -1.4846 20 0.1532 -0.6289 0.1059
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfmc.srel2.forms, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.65268 0.0306 17.95 0.588 0.717
## factor(Forms)B -0.00153 0.0600 1.21 -0.513 0.510
## factor(Forms)Both -0.26148 0.0306 17.95 -0.326 -0.197
## Predicted subgroup values
predict(MLMEMCSC.tfmc.srel2.forms, newmods = cbind(c(0,1,0),
c(0,0,1)))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.6527 0.0301 0.5898 0.7156 0.3856 0.9198
## 2 0.6512 0.0954 0.4522 0.8501 0.3241 0.9782
## 3 0.3912 0.1735 0.0292 0.7532 -0.0542 0.8366
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfmc.srel2.scores <- rma.mv(SREL2C,
SREL2C.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ Scores)
## Summarize the results
summary(MLMEMCSC.tfmc.srel2.scores, digits=4)
##
## Multivariate Meta-Analysis Model (k = 24; method: REML)
##
## logLik Deviance AIC BIC AICc
## 8.7763 -17.5527 -9.5527 -5.1885 -7.1997
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0092 0.0958 24 no STUDID
## sigma^2.2 0.0092 0.0958 24 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 22) = 248.0145, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 22) = 1.1842, p-val = 0.2883
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.6039 0.0396 15.2449 22 <.0001 0.5217 0.6860 ***
## Scores 0.0663 0.0609 1.0882 22 0.2883 -0.0600 0.1926
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfmc.srel2.scores, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.6039 0.0302 11.8 0.538 0.670
## Scores 0.0663 0.0652 19.2 -0.070 0.203
## Predicted subgroup values
predict(MLMEMCSC.tfmc.srel2.scores, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.6039 0.0396 0.5217 0.6860 0.3112 0.8966
## 2 0.6702 0.0463 0.5742 0.7661 0.3733 0.9670
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfmc.srel2.lang <- rma.mv(SREL2C,
SREL2C.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ LanguageEnglish)
## Summarize the results
summary(MLMEMCSC.tfmc.srel2.lang, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 8.7982 -17.5965 -9.5965 -5.0545 -7.3742
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0090 0.0950 25 no STUDID
## sigma^2.2 0.0090 0.0950 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 150.2834, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 1.0279, p-val = 0.3212
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.6797 0.0557 12.2090 23 <.0001 0.5645 0.7948 ***
## LanguageEnglish -0.0668 0.0659 -1.0138 23 0.3212 -0.2031 0.0695
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfmc.srel2.lang, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.6797 0.0795 6.02 0.485 0.874
## LanguageEnglish -0.0668 0.0841 11.10 -0.252 0.118
## Predicted subgroup values
predict(MLMEMCSC.tfmc.srel2.lang, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.6797 0.0557 0.5645 0.7948 0.3789 0.9804
## 2 0.6129 0.0352 0.5400 0.6858 0.3257 0.9001
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfmc.srel2.cult <- rma.mv(SREL2C,
SREL2C.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ CultureWestern)
## Summarize the results
summary(MLMEMCSC.tfmc.srel2.cult, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 8.3362 -16.6724 -8.6724 -4.1304 -6.4501
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0102 0.1009 25 no STUDID
## sigma^2.2 0.0102 0.1009 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 212.8276, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 0.0456, p-val = 0.8327
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.6218 0.0520 11.9646 23 <.0001 0.5143 0.7293 ***
## CultureWestern 0.0139 0.0652 0.2136 23 0.8327 -0.1210 0.1489
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfmc.srel2.cult, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.6218 0.0777 8.03 0.443 0.801
## CultureWestern 0.0139 0.0808 16.58 -0.157 0.185
## Predicted subgroup values
predict(MLMEMCSC.tfmc.srel2.cult, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.6218 0.0520 0.5143 0.7293 0.3078 0.9358
## 2 0.6357 0.0394 0.5542 0.7172 0.3296 0.9418
## Three-level MEM
## Model specification and estimation
## Note: The proportion is arcsine-square-root transformed to stabilize the distribution
## and approximate normality.
## Source: Schwarzer et al. (2019), https://doi.org/10.1002/jrsm.1348
MLMEMCSC.tfmc.srel2.female <- rma.mv(SREL2C,
SREL2C.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ asin(sqrt(PropFemale/100)))
## Summarize the results
summary(MLMEMCSC.tfmc.srel2.female, digits=4)
##
## Multivariate Meta-Analysis Model (k = 24; method: REML)
##
## logLik Deviance AIC BIC AICc
## 7.7170 -15.4340 -7.4340 -3.0699 -5.0811
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0104 0.1020 24 no STUDID
## sigma^2.2 0.0104 0.1020 24 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 22) = 483.8490, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 22) = 0.5703, p-val = 0.4581
##
## Model Results:
##
## estimate se tval df pval ci.lb
## intrcpt 0.5389 0.1213 4.4418 22 0.0002 0.2873
## asin(sqrt(PropFemale/100)) 0.1007 0.1333 0.7552 22 0.4581 -0.1758
## ci.ub
## intrcpt 0.7905 ***
## asin(sqrt(PropFemale/100)) 0.3772
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfmc.srel2.female, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.539 0.0927 3.68 0.272 0.805
## asin(sqrt(PropFemale/100)) 0.101 0.0836 2.21 -0.228 0.430
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfmc.srelcr.age <- rma.mv(SRELCRC,
SRELCRC.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ Adults)
## Summarize the results
summary(MLMEMCSC.tfmc.srelcr.age, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 23.7634 -47.5268 -39.5268 -34.9848 -37.3046
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0027 0.0521 25 no STUDID
## sigma^2.2 0.0027 0.0521 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 522.6509, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 1.7859, p-val = 0.1945
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.8324 0.0188 44.3556 23 <.0001 0.7936 0.8712 ***
## Adults -0.0450 0.0337 -1.3364 23 0.1945 -0.1147 0.0247
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfmc.srelcr.age, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.832 0.0162 15.7 0.798 0.8668
## Adults -0.045 0.0388 13.2 -0.129 0.0387
## Predicted subgroup values
predict(MLMEMCSC.tfmc.srelcr.age, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.8324 0.0188 0.7936 0.8712 0.6751 0.9897
## 2 0.7874 0.0280 0.7295 0.8453 0.6243 0.9504
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfmc.srelcr.validity <- rma.mv(SRELCRC,
SRELCRC.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ Validity)
## Summarize the results
summary(MLMEMCSC.tfmc.srelcr.validity, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 24.7551 -49.5102 -41.5102 -36.9682 -39.2879
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0025 0.0502 25 no STUDID
## sigma^2.2 0.0025 0.0502 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 444.1613, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 3.8597, p-val = 0.0617
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.8331 0.0167 49.9023 23 <.0001 0.7985 0.8676 ***
## Validity -0.0765 0.0389 -1.9646 23 0.0617 -0.1570 0.0041 .
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfmc.srelcr.validity, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.8331 0.0159 18.7 0.800 0.866
## Validity -0.0765 0.0452 5.6 -0.189 0.036
## Predicted subgroup values
predict(MLMEMCSC.tfmc.srelcr.validity, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.8331 0.0167 0.7985 0.8676 0.6821 0.9840
## 2 0.7566 0.0352 0.6838 0.8293 0.5926 0.9206
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfmc.srelcr.forms <- rma.mv(SRELCRC,
SRELCRC.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ factor(Forms))
## Summarize the results
summary(MLMEMCSC.tfmc.srelcr.forms, digits=4)
##
## Multivariate Meta-Analysis Model (k = 23; method: REML)
##
## logLik Deviance AIC BIC AICc
## 27.8527 -55.7053 -45.7053 -40.7267 -41.4196
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0014 0.0368 23 no STUDID
## sigma^2.2 0.0014 0.0368 23 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 20) = 408.6778, p-val < .0001
##
## Test of Moderators (coefficients 2:3):
## F(df1 = 2, df2 = 20) = 5.2885, p-val = 0.0143
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.8420 0.0124 67.8009 20 <.0001 0.8161 0.8679 ***
## factor(Forms)B -0.0257 0.0419 -0.6145 20 0.5458 -0.1130 0.0616
## factor(Forms)Both -0.2876 0.0894 -3.2163 20 0.0043 -0.4742 -0.1011 **
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfmc.srelcr.forms, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.8420 0.0126 18.6 0.816 0.868
## factor(Forms)B -0.0257 0.0269 1.2 -0.258 0.206
## factor(Forms)Both -0.2876 0.0126 18.6 -0.314 -0.261
## Predicted subgroup values
predict(MLMEMCSC.tfmc.srelcr.forms, newmods = cbind(c(0,1,0),
c(0,0,1)))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.8420 0.0124 0.8161 0.8679 0.7304 0.9535
## 2 0.8163 0.0400 0.7329 0.8997 0.6794 0.9531
## 3 0.5544 0.0886 0.3696 0.7391 0.3401 0.7686
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfmc.srelcr.scores <- rma.mv(SRELCRC,
SRELCRC.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ Scores)
## Summarize the results
summary(MLMEMCSC.tfmc.srelcr.scores, digits=4)
##
## Multivariate Meta-Analysis Model (k = 24; method: REML)
##
## logLik Deviance AIC BIC AICc
## 23.5969 -47.1938 -39.1938 -34.8296 -36.8409
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0026 0.0507 24 no STUDID
## sigma^2.2 0.0026 0.0507 24 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 22) = 426.8649, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 22) = 0.0088, p-val = 0.9261
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.8252 0.0207 39.8103 22 <.0001 0.7822 0.8682 ***
## Scores -0.0029 0.0309 -0.0938 22 0.9261 -0.0671 0.0613
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfmc.srelcr.scores, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.8252 0.0201 11.7 0.7813 0.8692
## Scores -0.0029 0.0310 20.9 -0.0673 0.0615
## Predicted subgroup values
predict(MLMEMCSC.tfmc.srelcr.scores, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.8252 0.0207 0.7822 0.8682 0.6705 0.9799
## 2 0.8223 0.0230 0.7747 0.8699 0.6663 0.9784
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfmc.srelcr.lang <- rma.mv(SRELCR,
SRELCR.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ LanguageEnglish)
## Summarize the results
summary(MLMEMCSC.tfmc.srelcr.lang, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 21.9336 -43.8672 -35.8672 -31.3252 -33.6449
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0032 0.0569 25 no STUDID
## sigma^2.2 0.0032 0.0569 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 417.2232, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 0.4465, p-val = 0.5106
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.7821 0.0307 25.4514 23 <.0001 0.7185 0.8456 ***
## LanguageEnglish 0.0246 0.0369 0.6682 23 0.5106 -0.0516 0.1009
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfmc.srelcr.lang, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.7821 0.0443 6.74 0.6766 0.888
## LanguageEnglish 0.0246 0.0468 12.90 -0.0765 0.126
## Predicted subgroup values
predict(MLMEMCSC.tfmc.srelcr.lang, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.7821 0.0307 0.7185 0.8456 0.6040 0.9601
## 2 0.8067 0.0204 0.7646 0.8488 0.6351 0.9783
## Three-level MEM
## Model specification and estimation
MLMEMCSC.tfmc.srelcr.cult <- rma.mv(SRELCR,
SRELCR.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ CultureWestern)
## Summarize the results
summary(MLMEMCSC.tfmc.srelcr.cult, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 22.4612 -44.9224 -36.9224 -32.3804 -34.7001
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0031 0.0555 25 no STUDID
## sigma^2.2 0.0031 0.0555 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 476.6963, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 1.5317, p-val = 0.2283
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.7735 0.0268 28.8471 23 <.0001 0.7180 0.8290 ***
## CultureWestern 0.0422 0.0341 1.2376 23 0.2283 -0.0284 0.1128
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfmc.srelcr.cult, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.7735 0.0368 8.7 0.6898 0.857
## CultureWestern 0.0422 0.0395 18.4 -0.0406 0.125
## Predicted subgroup values
predict(MLMEMCSC.tfmc.srelcr.cult, newmods = c(0,1))
##
## pred se ci.lb ci.ub pi.lb pi.ub
## 1 0.7735 0.0268 0.7180 0.8290 0.6021 0.9450
## 2 0.8158 0.0211 0.7721 0.8594 0.6478 0.9838
## Three-level MEM
## Model specification and estimation
## Note: The proportion is arcsine-square-root transformed to stabilize the distribution
## and approximate normality.
## Source: Schwarzer et al. (2019), https://doi.org/10.1002/jrsm.1348
MLMEMCSC.tfmc.srelcr.female <- rma.mv(SRELCR,
SRELCR.vg,
random = list(~ 1 | STUDID/ESID),
data = srel.meta,
method = "REML",
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ asin(sqrt(PropFemale/100)))
## Summarize the results
summary(MLMEMCSC.tfmc.srelcr.female, digits=4)
##
## Multivariate Meta-Analysis Model (k = 24; method: REML)
##
## logLik Deviance AIC BIC AICc
## 20.3507 -40.7014 -32.7014 -28.3373 -30.3485
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0034 0.0587 24 no STUDID
## sigma^2.2 0.0034 0.0587 24 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 22) = 685.9332, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 22) = 0.1632, p-val = 0.6901
##
## Model Results:
##
## estimate se tval df pval ci.lb
## intrcpt 0.7704 0.0684 11.2614 22 <.0001 0.6285
## asin(sqrt(PropFemale/100)) 0.0308 0.0761 0.4040 22 0.6901 -0.1271
## ci.ub
## intrcpt 0.9122 ***
## asin(sqrt(PropFemale/100)) 0.1887
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
clubSandwich::conf_int(MLMEMCSC.tfmc.srelcr.female, vcov = "CR2")
## Coef. Estimate SE d.f. Lower 95% CI Upper 95% CI
## intrcpt 0.7704 0.0517 3.64 0.621 0.920
## asin(sqrt(PropFemale/100)) 0.0308 0.0461 2.26 -0.147 0.209
## Reliability of factor 1
## Egger's regression test (PET)
## Details: https://wviechtb.github.io/metafor/reference/regtest.html
## Three-level MEM
MLMEMCSC.tfmc.srel1.pet <- rma.mv(SREL1C,
SREL1C.vg,
random = list(~ 1 | STUDID/ESID),
method = "REML",
data = srel.meta,
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ sqrt(SREL1C.vg))
## Summarize the results
summary(MLMEMCSC.tfmc.srel1.pet, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 23.6111 -47.2223 -39.2223 -34.6803 -37.0001
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0007 0.0265 25 no STUDID
## sigma^2.2 0.0007 0.0265 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 186.3863, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 76.3920, p-val < .0001
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.9000 0.0137 65.6949 23 <.0001 0.8717 0.9283 ***
## sqrt(SREL1C.vg) -4.0655 0.4651 -8.7403 23 <.0001 -5.0277 -3.1033 ***
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
coef_test(MLMEMCSC.tfmc.srel1.pet, vcov = "CR2")
## Coef. Estimate SE t-stat d.f. (Satt) p-val (Satt) Sig.
## intrcpt 0.90 0.0206 43.60 12.95 < 0.001 ***
## sqrt(SREL1C.vg) -4.07 1.0480 -3.88 9.29 0.00352 **
## Result: The standard errors are significantly moderating the effect size.
## This can be considered evidence for publication or selection bias.
## Funnel plot test
## Three-level MEM
MLMEMCSC.tfmc.srel1.fpt <- rma.mv(SREL1C,
SREL1C.vg,
random = list(~ 1 | STUDID/ESID),
method = "REML",
data = srel.meta,
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ N)
## Summarize the results
summary(MLMEMCSC.tfmc.srel1.fpt, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 6.9163 -13.8326 -5.8326 -1.2906 -3.6103
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0103 0.1014 25 no STUDID
## sigma^2.2 0.0103 0.1014 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 418.8469, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 3.9690, p-val = 0.0583
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.6979 0.0453 15.4084 23 <.0001 0.6042 0.7916 ***
## N 0.0001 0.0001 1.9922 23 0.0583 -0.0000 0.0003 .
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
coef_test(MLMEMCSC.tfmc.srel1.fpt, vcov = "CR2")
## Coef. Estimate SE t-stat d.f. (Satt) p-val (Satt) Sig.
## intrcpt 0.697914 0.055971 12.47 15.56 <0.001 ***
## N 0.000137 0.000073 1.87 5.39 0.116
## Contour-enhanced funnel plot
funnel(MLREMCSC.tfmc.srel1,
main="Standard Error",
level = c(90, 95, 99),
shade = c("white", "gray55", "gray75"),
legend = TRUE)
## Result: No evidence for publication or selection bias.
## Precision-Effect Estimate with SE (PEESE)
## Three-level MEM
MLMEMCSC.tfmc.srel1.peese <- rma.mv(SREL1C,
SREL1C.vg,
random = list(~ 1 | STUDID/ESID),
method = "REML",
data = srel.meta,
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ SREL1C.vg)
## Summarize the results
summary(MLMEMCSC.tfmc.srel1.peese, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 7.9836 -15.9673 -7.9673 -3.4253 -5.7450
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0098 0.0989 25 no STUDID
## sigma^2.2 0.0098 0.0989 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 390.6398, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 3.4707, p-val = 0.0753
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.7736 0.0300 25.7989 23 <.0001 0.7116 0.8356 ***
## SREL1C.vg -3.2596 1.7497 -1.8630 23 0.0753 -6.8791 0.3599 .
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
coef_test(MLMEMCSC.tfmc.srel1.peese, vcov = "CR2")
## Coef. Estimate SE t-stat d.f. (Satt) p-val (Satt) Sig.
## intrcpt 0.774 0.0313 24.715 22.54 <0.001 ***
## SREL1C.vg -3.260 8.4850 -0.384 1.05 0.764
## Result: The sampling variances are significantly moderating the effect size.
## This can be considered evidence for publication or selection bias.
## Influential effect sizes
## Analyses based on the REM with variation between effect sizes
## Plots indicating potential influential effect sizes
inf.tfmc.srel1 <- influence.rma.uni(rma(SREL1C,
SREL1C.vg,
data = srel.meta,
method = "REML"))
plot.infl.rma.uni(inf.tfmc.srel1)
# Increase max print options to show all effect sizes
options(max.print = 1000000)
print(inf.tfmc.srel1)
##
## rstudent dffits cook.d cov.r tau2.del QE.del hat weight dfbs inf
## 1 0.0428 0.0433 0.0020 1.1270 0.0253 399.2283 0.0438 4.3765 0.0434
## 2 0.4758 0.1315 0.0185 1.1157 0.0250 420.2750 0.0441 4.4089 0.1317
## 3 -2.0587 -0.4375 0.1690 0.8610 0.0193 407.0371 0.0300 2.9975 -0.4495
## 4 0.1642 0.0684 0.0050 1.1247 0.0253 417.3371 0.0430 4.3005 0.0684
## 5 -0.5757 -0.0998 0.0103 1.0822 0.0243 410.4367 0.0400 3.9995 -0.0997
## 6 -1.2987 -0.2673 0.0684 0.9794 0.0220 411.4365 0.0338 3.3755 -0.2688
## 7 -0.1631 -0.0036 0.0000 1.1111 0.0250 418.9619 0.0399 3.9890 -0.0036
## 8 0.2768 0.0929 0.0093 1.1259 0.0252 356.1077 0.0444 4.4376 0.0931
## 9 -5.9128 -1.5778 1.2860 0.3218 0.0066 358.8042 0.0300 2.9998 -2.0176 *
## 10 0.7582 0.1829 0.0350 1.0919 0.0244 423.9669 0.0444 4.4409 0.1831
## 11 0.4035 0.1180 0.0150 1.1205 0.0251 402.0327 0.0443 4.4327 0.1182
## 12 0.8308 0.1952 0.0395 1.0836 0.0242 413.0919 0.0444 4.4435 0.1954
## 13 0.7782 0.1863 0.0362 1.0897 0.0244 422.7039 0.0444 4.4406 0.1865
## 14 0.0914 0.0531 0.0030 1.1251 0.0253 414.7629 0.0430 4.3015 0.0532
## 15 0.7410 0.1796 0.0338 1.0934 0.0245 425.3786 0.0442 4.4234 0.1798
## 16 -0.6255 -0.1138 0.0134 1.0796 0.0242 401.9331 0.0413 4.1324 -0.1137
## 17 0.6777 0.1602 0.0268 1.0911 0.0245 425.6607 0.0400 4.0004 0.1601
## 18 0.0656 0.0474 0.0024 1.1240 0.0252 416.1942 0.0427 4.2658 0.0474
## 19 0.6114 0.1555 0.0256 1.1043 0.0248 425.3541 0.0435 4.3536 0.1557
## 20 0.7455 0.1794 0.0337 1.0920 0.0245 425.5211 0.0437 4.3745 0.1796
## 21 -1.0199 -0.0561 0.0032 0.9993 0.0233 424.1353 0.0029 0.2859 -0.0562
## 22 0.4521 0.1270 0.0173 1.1172 0.0250 418.3646 0.0441 4.4126 0.1272
## 23 0.2874 0.0933 0.0094 1.1218 0.0252 420.9575 0.0430 4.2963 0.0934
## 24 -0.7191 -0.1369 0.0192 1.0674 0.0239 403.5294 0.0406 4.0648 -0.1369
## 25 0.9945 0.2214 0.0498 1.0622 0.0237 310.1251 0.0445 4.4461 0.2215
## Reliability of factor 2
## Egger's regression test (PET)
## Details: https://wviechtb.github.io/metafor/reference/regtest.html
## Three-level MEM
MLMEMCSC.tfmc.srel2.pet <- rma.mv(SREL2C,
SREL2C.vg,
random = list(~ 1 | STUDID/ESID),
method = "REML",
data = srel.meta,
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ sqrt(SREL2C.vg))
## Summarize the results
summary(MLMEMCSC.tfmc.srel2.pet, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 11.7491 -23.4982 -15.4982 -10.9562 -13.2760
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0064 0.0797 25 no STUDID
## sigma^2.2 0.0064 0.0797 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 320.6533, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 6.7122, p-val = 0.0163
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.7112 0.0386 18.4088 23 <.0001 0.6313 0.7912 ***
## sqrt(SREL2C.vg) -1.6624 0.6416 -2.5908 23 0.0163 -2.9897 -0.3350 *
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
coef_test(MLMEMCSC.tfmc.srel2.pet, vcov = "CR2")
## Coef. Estimate SE t-stat d.f. (Satt) p-val (Satt) Sig.
## intrcpt 0.711 0.0418 17.01 11.83 <0.001 ***
## sqrt(SREL2C.vg) -1.662 0.9334 -1.78 4.34 0.144
## Result: The standard errors are significantly moderating the effect size.
## This can be considered evidence for publication or selection bias.
## Funnel plot test
## Three-level MEM
MLMEMCSC.tfmc.srel2.fpt <- rma.mv(SREL2C,
SREL2C.vg,
random = list(~ 1 | STUDID/ESID),
method = "REML",
data = srel.meta,
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ N)
## Summarize the results
summary(MLMEMCSC.tfmc.srel2.fpt, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 8.3137 -16.6273 -8.6273 -4.0854 -6.4051
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0101 0.1006 25 no STUDID
## sigma^2.2 0.0101 0.1006 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 494.3038, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 0.0947, p-val = 0.7610
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.6198 0.0473 13.0900 23 <.0001 0.5218 0.7177 ***
## N 0.0000 0.0001 0.3078 23 0.7610 -0.0001 0.0002
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
coef_test(MLMEMCSC.tfmc.srel2.fpt, vcov = "CR2")
## Coef. Estimate SE t-stat d.f. (Satt) p-val (Satt) Sig.
## intrcpt 0.6197671 0.0479670 12.921 15.1 <0.001 ***
## N 0.0000216 0.0000573 0.377 5.2 0.721
## Contour-enhanced funnel plot
funnel(MLREMCSC.tfmc.srel2,
main="Standard Error",
level = c(90, 95, 99),
shade = c("white", "gray55", "gray75"),
legend = TRUE)
## Result: No evidence for publication or selection bias.
## Precision-Effect Estimate with SE (PEESE)
## Three-level MEM
MLMEMCSC.tfmc.srel2.peese <- rma.mv(SREL2C,
SREL2C.vg,
random = list(~ 1 | STUDID/ESID),
method = "REML",
data = srel.meta,
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ SREL2C.vg)
## Summarize the results
summary(MLMEMCSC.tfmc.srel2.peese, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 9.6282 -19.2564 -11.2564 -6.7144 -9.0341
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0089 0.0946 25 no STUDID
## sigma^2.2 0.0089 0.0946 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 467.0447, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 0.8934, p-val = 0.3544
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.6398 0.0308 20.7941 23 <.0001 0.5762 0.7035 ***
## SREL2C.vg -1.8922 2.0018 -0.9452 23 0.3544 -6.0332 2.2489
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
coef_test(MLMEMCSC.tfmc.srel2.peese, vcov = "CR2")
## Coef. Estimate SE t-stat d.f. (Satt) p-val (Satt) Sig.
## intrcpt 0.64 0.0291 21.99 21.59 <0.001 ***
## SREL2C.vg -1.89 1.5272 -1.24 1.23 0.402
## Result: The sampling variances are significantly moderating the effect size.
## This can be considered evidence for publication or selection bias.
## Influential effect sizes
## Analyses based on the REM with variation between effect sizes
## Plots indicating potential influential effect sizes
inf.tfmc.srel2 <- influence.rma.uni(rma(SREL2C,
SREL2C.vg,
data = srel.meta,
method = "REML"))
plot.infl.rma.uni(inf.tfmc.srel2)
# Increase max print options to show all effect sizes
options(max.print = 1000000)
print(inf.tfmc.srel2)
##
## rstudent dffits cook.d cov.r tau2.del QE.del hat weight dfbs inf
## 1 -0.4546 -0.0817 0.0070 1.0938 0.0199 473.8330 0.0455 4.5523 -0.0818
## 2 -0.1583 -0.0117 0.0001 1.1092 0.0202 483.3117 0.0454 4.5434 -0.0117
## 3 -1.3485 -0.2400 0.0562 0.9895 0.0181 486.8228 0.0276 2.7559 -0.2417
## 4 1.4482 0.3034 0.0868 0.9963 0.0178 475.4692 0.0478 4.7798 0.3025
## 5 -1.5066 -0.3378 0.1063 0.9625 0.0173 471.6695 0.0395 3.9549 -0.3391
## 6 -2.3690 -0.4958 0.2145 0.8520 0.0152 472.6836 0.0319 3.1900 -0.5095
## 7 0.4920 0.1218 0.0155 1.0940 0.0200 494.6315 0.0418 4.1822 0.1217
## 8 0.0278 0.0314 0.0011 1.1197 0.0203 446.5656 0.0483 4.8251 0.0315
## 9 1.4476 0.2702 0.0705 0.9997 0.0181 492.5023 0.0381 3.8128 0.2708
## 10 0.1709 0.0629 0.0042 1.1182 0.0203 477.9306 0.0478 4.7817 0.0631
## 11 -1.1009 -0.2549 0.0632 1.0231 0.0184 418.1080 0.0467 4.6734 -0.2547
## 12 0.3491 0.1015 0.0110 1.1146 0.0202 479.9340 0.0483 4.8253 0.1019
## 13 1.6847 0.3423 0.1050 0.9543 0.0170 204.9424 0.0487 4.8677 0.3402
## 14 -2.7553 -0.5805 0.2827 0.7994 0.0142 468.4919 0.0314 3.1370 -0.6034
## 15 0.3051 0.0904 0.0087 1.1120 0.0202 490.9536 0.0465 4.6467 0.0906
## 16 -0.2046 -0.0223 0.0005 1.1034 0.0201 486.7779 0.0437 4.3669 -0.0223
## 17 -0.2109 -0.0128 0.0002 1.0116 0.0191 494.7088 0.0052 0.5249 -0.0128
## 18 0.3228 0.0915 0.0089 1.1063 0.0202 493.2400 0.0442 4.4209 0.0916
## 19 0.4808 0.1232 0.0160 1.0996 0.0200 494.3278 0.0442 4.4169 0.1232
## 20 0.5570 0.1365 0.0195 1.0934 0.0199 494.7227 0.0433 4.3251 0.1365
## 21 -0.0527 -0.0007 0.0000 1.0153 0.0191 494.8203 0.0065 0.6472 -0.0007
## 22 0.0842 0.0430 0.0020 1.1157 0.0203 485.5125 0.0465 4.6541 0.0431
## 23 1.1937 0.2594 0.0663 1.0347 0.0186 490.3481 0.0470 4.6951 0.2592
## 24 0.5432 0.1367 0.0196 1.0978 0.0200 494.4961 0.0450 4.5010 0.1368
## 25 -0.6043 -0.1111 0.0127 1.0701 0.0195 486.6137 0.0392 3.9196 -0.1110
## Reliability of factor 1
## Egger's regression test (PET)
## Details: https://wviechtb.github.io/metafor/reference/regtest.html
## Three-level MEM
MLMEMCSC.tfmc.srelcr.pet <- rma.mv(SRELCRC,
SRELCRC.vg,
random = list(~ 1 | STUDID/ESID),
method = "REML",
data = srel.meta,
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ sqrt(SRELCRC.vg))
## Summarize the results
summary(MLMEMCSC.tfmc.srelcr.pet, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 38.5774 -77.1549 -69.1549 -64.6129 -66.9326
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0007 0.0262 25 no STUDID
## sigma^2.2 0.0007 0.0262 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 232.1572, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 47.8856, p-val < .0001
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.9125 0.0145 62.7468 23 <.0001 0.8824 0.9425 ***
## sqrt(SRELCRC.vg) -4.6279 0.6688 -6.9199 23 <.0001 -6.0113 -3.2444 ***
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
coef_test(MLMEMCSC.tfmc.srelcr.pet, vcov = "CR2")
## Coef. Estimate SE t-stat d.f. (Satt) p-val (Satt) Sig.
## intrcpt 0.912 0.0126 72.65 12.95 <0.001 ***
## sqrt(SRELCRC.vg) -4.628 0.6472 -7.15 8.06 <0.001 ***
## Result: The standard errors are significantly moderating the effect size.
## This can be considered evidence for publication or selection bias.
## Funnel plot test
## Three-level MEM
MLMEMCSC.tfmc.srelcr.fpt <- rma.mv(SRELCRC,
SRELCRC.vg,
random = list(~ 1 | STUDID/ESID),
method = "REML",
data = srel.meta,
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ N)
## Summarize the results
summary(MLMEMCSC.tfmc.srelcr.fpt, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 24.5762 -49.1524 -41.1524 -36.6104 -38.9301
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0026 0.0508 25 no STUDID
## sigma^2.2 0.0026 0.0508 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 518.9919, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 3.5613, p-val = 0.0718
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.7872 0.0227 34.7324 23 <.0001 0.7403 0.8340 ***
## N 0.0001 0.0000 1.8871 23 0.0718 -0.0000 0.0001 .
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
coef_test(MLMEMCSC.tfmc.srelcr.fpt, vcov = "CR2")
## Coef. Estimate SE t-stat d.f. (Satt) p-val (Satt) Sig.
## intrcpt 0.787152 0.0248723 31.65 16.41 <0.001 ***
## N 0.000065 0.0000341 1.91 5.38 0.111
## Contour-enhanced funnel plot
funnel(MLREMCSC.tfmc.srelcr,
main="Standard Error",
level = c(90, 95, 99),
shade = c("white", "gray55", "gray75"),
legend = TRUE)
## Result: No evidence for publication or selection bias.
## Precision-Effect Estimate with SE (PEESE)
## Three-level MEM
MLMEMCSC.tfmc.srelcr.peese <- rma.mv(SRELCRC,
SRELCRC.vg,
random = list(~ 1 | STUDID/ESID),
method = "REML",
data = srel.meta,
slab = paste(Reference),
tdist = TRUE,
test = "t",
mods =~ SRELCRC.vg)
## Summarize the results
summary(MLMEMCSC.tfmc.srelcr.peese, digits=4)
##
## Multivariate Meta-Analysis Model (k = 25; method: REML)
##
## logLik Deviance AIC BIC AICc
## 36.4251 -72.8502 -64.8502 -60.3083 -62.6280
##
## Variance Components:
##
## estim sqrt nlvls fixed factor
## sigma^2.1 0.0009 0.0296 25 no STUDID
## sigma^2.2 0.0009 0.0296 25 no STUDID/ESID
##
## Test for Residual Heterogeneity:
## QE(df = 23) = 331.1155, p-val < .0001
##
## Test of Moderators (coefficient 2):
## F(df1 = 1, df2 = 23) = 37.9578, p-val < .0001
##
## Model Results:
##
## estimate se tval df pval ci.lb ci.ub
## intrcpt 0.8633 0.0110 78.1818 23 <.0001 0.8405 0.8862 ***
## SRELCRC.vg -68.5051 11.1192 -6.1610 23 <.0001 -91.5068 -45.5033 ***
##
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## RVE standard errors
coef_test(MLMEMCSC.tfmc.srelcr.peese, vcov = "CR2")
## Coef. Estimate SE t-stat d.f. (Satt) p-val (Satt) Sig.
## intrcpt 0.863 0.0101 85.67 18.21 < 0.001 ***
## SRELCRC.vg -68.505 10.1813 -6.73 3.05 0.00637 **
## Result: The sampling variances are significantly moderating the effect size.
## This can be considered evidence for publication or selection bias.
## Influential effect sizes
## Analyses based on the REM with variation between effect sizes
## Plots indicating potential influential effect sizes
inf.tfmc.srelcr <- influence.rma.uni(rma(SRELCRC,
SRELCRC.vg,
data = srel.meta,
method = "REML"))
plot.infl.rma.uni(inf.tfmc.srelcr)
# Increase max print options to show all effect sizes
options(max.print = 1000000)
print(inf.tfmc.srelcr)
##
## rstudent dffits cook.d cov.r tau2.del QE.del hat weight dfbs inf
## 1 -0.1663 -0.0056 0.0000 1.1071 0.0060 495.4587 0.0430 4.2976 -0.0056
## 2 0.3227 0.0986 0.0103 1.1090 0.0060 514.7507 0.0432 4.3164 0.0987
## 3 -2.7417 -0.5080 0.2305 0.8294 0.0045 501.8788 0.0233 2.3292 -0.5328
## 4 1.3824 0.2778 0.0740 1.0069 0.0054 472.8212 0.0444 4.4392 0.2773
## 5 -1.8689 -0.4123 0.1531 0.9062 0.0049 499.4453 0.0330 3.3040 -0.4178
## 6 -2.2029 -0.5695 0.2641 0.8319 0.0044 472.4256 0.0381 3.8127 -0.5743
## 7 0.2985 0.0893 0.0084 1.1012 0.0060 520.4364 0.0397 3.9673 0.0893
## 8 0.3347 0.1025 0.0112 1.1114 0.0060 479.9229 0.0443 4.4341 0.1027
## 9 0.0787 0.0461 0.0022 1.1050 0.0060 517.3624 0.0402 4.0206 0.0461
## 10 0.8772 0.2019 0.0419 1.0734 0.0058 522.5130 0.0443 4.4338 0.2021
## 11 -0.5283 -0.0928 0.0090 1.0859 0.0058 445.4642 0.0435 4.3538 -0.0929
## 12 0.7028 0.1718 0.0309 1.0897 0.0059 519.6958 0.0443 4.4320 0.1721
## 13 1.5047 0.2939 0.0810 0.9872 0.0053 338.7830 0.0445 4.4522 0.2931
## 14 -1.7136 -0.3875 0.1363 0.9251 0.0049 496.4310 0.0353 3.5308 -0.3907
## 15 0.8789 0.2010 0.0415 1.0725 0.0058 522.5865 0.0438 4.3839 0.2012
## 16 -0.3086 -0.0386 0.0016 1.0990 0.0059 497.2894 0.0424 4.2350 -0.0386
## 17 0.0238 0.0298 0.0009 1.0868 0.0059 520.6986 0.0333 3.3304 0.0296
## 18 0.2770 0.0880 0.0082 1.1074 0.0060 517.7329 0.0420 4.1965 0.0881
## 19 0.5083 0.1313 0.0181 1.0969 0.0059 521.4169 0.0413 4.1337 0.1313
## 20 0.9818 0.2146 0.0468 1.0598 0.0057 522.1870 0.0426 4.2602 0.2147
## 21 -2.1406 -0.4041 0.1504 0.8937 0.0048 506.5283 0.0252 2.5213 -0.4152
## 22 0.4544 0.1248 0.0165 1.1047 0.0060 516.5492 0.0436 4.3568 0.1250
## 23 0.4890 0.1291 0.0176 1.0998 0.0059 520.6466 0.0422 4.2201 0.1293
## 24 -0.2742 -0.0302 0.0010 1.0939 0.0059 512.7552 0.0395 3.9459 -0.0302
## 25 0.5264 0.1373 0.0199 1.0994 0.0059 520.2911 0.0429 4.2922 0.1375
## Reliability of factor 1
#pdf(file = "ForestPlots-TwoFactorModel3.pdf", onefile = TRUE)
forest.rma(MLREMCSC.tfmc.srel1,
addfit = TRUE,
order = "obs",
header = "Reference",
refline = 0,
rows = 1:MLREMCSC.tfmc.srel1$k,
digits = 3,
level = 95,
cex = .6,
xlab = "Omega Coefficient",
main = "Reliability Factor 1 (Model 3)")
## Reliability of factor 2
forest.rma(MLREMCSC.tfmc.srel2,
addfit = TRUE,
order = "obs",
header = "Reference",
refline = 0,
rows = 1:MLREMCSC.tfmc.srel2$k,
digits = 3,
level = 95,
cex = .6,
xlab = "Omega Coefficient",
main = "Reliability Factor 2 (Model 3)")
## Composite reliability
forest.rma(MLREMCSC.tfmc.srelcr,
addfit = TRUE,
order = "obs",
header = "Reference",
refline = 0,
rows = 1:MLREMCSC.tfmc.srelcr$k,
digits = 3,
level = 95,
cex = .6,
xlab = "Omega Coefficient",
main = "Composite Reliability (Model 3)")
#dev.off()
sessionInfo()
## R version 4.3.1 (2023-06-16)
## Platform: aarch64-apple-darwin20 (64-bit)
## Running under: macOS Ventura 13.4.1
##
## Matrix products: default
## BLAS: /Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/lib/libRblas.0.dylib
## LAPACK: /Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/lib/libRlapack.dylib; LAPACK version 3.11.0
##
## locale:
## [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
##
## time zone: America/Chicago
## tzcode source: internal
##
## attached base packages:
## [1] stats graphics grDevices utils datasets methods base
##
## other attached packages:
## [1] dmetar_0.1.0 semPower_2.0.1 devtools_2.4.5
## [4] usethis_2.2.2 dplyr_1.1.2 lavaan_0.6-16
## [7] clubSandwich_0.5.10 robumeta_2.1 metafor_4.4-0
## [10] numDeriv_2016.8-1.1 metadat_1.2-0 Matrix_1.6-1
## [13] metaSEM_1.3.1 OpenMx_2.21.8 reshape2_1.4.4
## [16] psych_2.3.6 pacman_0.5.1
##
## loaded via a namespace (and not attached):
## [1] mathjaxr_1.6-0 rstudioapi_0.15.0 jsonlite_1.8.7
## [4] magrittr_2.0.3 modeltools_0.2-23 farver_2.1.1
## [7] nloptr_2.0.3 rmarkdown_2.24 fs_1.6.3
## [10] vctrs_0.6.4 memoise_2.0.1 minqa_1.2.6
## [13] CompQuadForm_1.4.3 htmltools_0.5.6 sass_0.4.7
## [16] bslib_0.5.1 htmlwidgets_1.6.2 plyr_1.8.8
## [19] poibin_1.5 sandwich_3.0-2 zoo_1.8-12
## [22] cachem_1.0.8 mime_0.12 lifecycle_1.0.3
## [25] pkgconfig_2.0.3 R6_2.5.1 fastmap_1.1.1
## [28] shiny_1.7.5 magic_1.6-1 digest_0.6.33
## [31] colorspace_2.1-0 ps_1.7.5 pkgload_1.3.3
## [34] ellipse_0.5.0 labeling_0.4.3 fansi_1.0.5
## [37] abind_1.4-5 compiler_4.3.1 remotes_2.4.2.1
## [40] withr_2.5.1 meta_6.5-0 pkgbuild_1.4.2
## [43] highr_0.10 MASS_7.3-60 sessioninfo_1.2.2
## [46] tools_4.3.1 pbivnorm_0.6.0 prabclus_2.3-3
## [49] httpuv_1.6.11 nnet_7.3-19 glue_1.6.2
## [52] quadprog_1.5-8 callr_3.7.3 nlme_3.1-162
## [55] promises_1.2.1 grid_4.3.1 cluster_2.1.4
## [58] generics_0.1.3 gtable_0.3.4 class_7.3-22
## [61] xml2_1.3.5 utf8_1.2.4 flexmix_2.3-19
## [64] ggrepel_0.9.4 pillar_1.9.0 stringr_1.5.0
## [67] later_1.3.1 robustbase_0.99-0 splines_4.3.1
## [70] lattice_0.21-8 tidyselect_1.2.0 pbapply_1.7-2
## [73] miniUI_0.1.1.1 knitr_1.43 gridExtra_2.3
## [76] stats4_4.3.1 xfun_0.40 diptest_0.76-0
## [79] DEoptimR_1.1-3 MuMIn_1.47.5 netmeta_2.8-2
## [82] stringi_1.7.12 yaml_2.3.7 boot_1.3-28.1
## [85] evaluate_0.22 codetools_0.2-19 kernlab_0.9-32
## [88] tibble_3.2.1 cli_3.6.1 RcppParallel_5.1.7
## [91] xtable_1.8-4 munsell_0.5.0 processx_3.8.2
## [94] jquerylib_0.1.4 Rcpp_1.0.11 parallel_4.3.1
## [97] ellipsis_0.3.2 ggplot2_3.4.4 prettyunits_1.2.0
## [100] mclust_6.0.0 profvis_0.3.8 urlchecker_1.0.1
## [103] lme4_1.1-34 mvtnorm_1.2-3 scales_1.2.1
## [106] purrr_1.0.2 crayon_1.5.2 fpc_2.2-10
## [109] rlang_1.1.1 mnormt_2.1.1