knitr::opts_chunk$set(echo = T, message = F, warning = F, error = F, fig.width=7, fig.height=6)
library(tidyverse)
library(psych)
install.packages("gtheory")
Error in install.packages : Updating loaded packages
library(gtheory)
task1_data <- read_csv("/Users/cyroasseodechoch/Downloads/asg_3_task_1.csv")
Rows: 12930 Columns: 3
── Column specification ─────────────────────────────────────────────────────────────────────
Delimiter: ","
chr (1): Question
dbl (2): Student, Score
ℹ Use `spec()` to retrieve the full column specification for this data.
ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
task2_data <- read_csv("/Users/cyroasseodechoch/Downloads/asg_3_task_2.csv")
Rows: 1293 Columns: 10
── Column specification ─────────────────────────────────────────────────────────────────────
Delimiter: ","
dbl (10): Q1, Q2, Q3, Q4, Q5, Q6, Q7, Q8, Q9, Q10
ℹ Use `spec()` to retrieve the full column specification for this data.
ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
library(gtheory)
task1_data <- task1_data %>%
mutate(Question = as.factor(Question))
formula <- Score ~ (1 | Student) + (1 | Question)
gstudy_results <- gstudy(data = task1_data, formula = formula)
gstudy_results$components
dstudy_results_10 <- dstudy(gstudy_results, facets = "Question", n.facets = c(10), colname.objects = "Student")
round(dstudy_results_10$generalizability, 3)
[1] 0.735
dstudy_results_8 <- dstudy(gstudy_results, facets = "Question", n.facets = c(8), colname.objects = "Student")
round(dstudy_results_8$generalizability, 3)
[1] 0.735
dstudy_results_5 <- dstudy(gstudy_results, facets = "Question", n.facets = c(5), colname.objects = "Student")
round(dstudy_results_5$generalizability, 3)
[1] 0.735
if (!requireNamespace("lavaan", quietly = TRUE)) {
install.packages("lavaan")
}
library(lavaan)
anxiety_model <- 'anxiety =~ Q1 + Q2 + Q3 + Q4 + Q5 + Q6 + Q7 + Q8 + Q9 + Q10'
cfa_fit <- cfa(anxiety_model, data = task2_data)
summary(cfa_fit, fit.measures = TRUE, standardized = TRUE)
lavaan 0.6-19 ended normally after 26 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 20
Number of observations 1293
Model Test User Model:
Test statistic 733.109
Degrees of freedom 35
P-value (Chi-square) 0.000
Model Test Baseline Model:
Test statistic 14210.598
Degrees of freedom 45
P-value 0.000
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.951
Tucker-Lewis Index (TLI) 0.937
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -16477.911
Loglikelihood unrestricted model (H1) -16111.356
Akaike (AIC) 32995.822
Bayesian (BIC) 33099.117
Sample-size adjusted Bayesian (SABIC) 33035.586
Root Mean Square Error of Approximation:
RMSEA 0.124
90 Percent confidence interval - lower 0.116
90 Percent confidence interval - upper 0.132
P-value H_0: RMSEA <= 0.050 0.000
P-value H_0: RMSEA >= 0.080 1.000
Standardized Root Mean Square Residual:
SRMR 0.027
Parameter Estimates:
Standard errors Standard
Information Expected
Information saturated (h1) model Structured
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
anxiety =~
Q1 1.000 1.282 0.871
Q2 0.797 0.021 38.422 0.000 1.022 0.810
Q3 1.008 0.028 35.588 0.000 1.293 0.775
Q4 1.056 0.023 45.703 0.000 1.353 0.885
Q5 0.898 0.020 44.856 0.000 1.150 0.877
Q6 1.016 0.022 47.109 0.000 1.303 0.898
Q7 1.033 0.024 43.887 0.000 1.324 0.868
Q8 0.906 0.022 40.625 0.000 1.161 0.834
Q9 1.028 0.021 49.511 0.000 1.318 0.918
Q10 1.070 0.024 44.271 0.000 1.372 0.872
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.Q1 0.523 0.023 22.876 0.000 0.523 0.242
.Q2 0.549 0.023 23.885 0.000 0.549 0.345
.Q3 1.113 0.046 24.211 0.000 1.113 0.400
.Q4 0.506 0.022 22.485 0.000 0.506 0.217
.Q5 0.396 0.017 22.711 0.000 0.396 0.230
.Q6 0.409 0.019 22.050 0.000 0.409 0.194
.Q7 0.574 0.025 22.944 0.000 0.574 0.247
.Q8 0.588 0.025 23.566 0.000 0.588 0.304
.Q9 0.325 0.015 21.075 0.000 0.325 0.158
.Q10 0.594 0.026 22.855 0.000 0.594 0.240
anxiety 1.643 0.083 19.728 0.000 1.000 1.000
if (!requireNamespace("semTools", quietly = TRUE)) {
install.packages("semTools")
}
library(semTools)
reliability_results <- compRelSEM(cfa_fit)
reliability_results
anxiety
0.966
LS0tCnRpdGxlOiAiSFdJSUkiCmRhdGU6IDExLzEwLzIwMjQKYXV0aG9yOiAiQ3lybyBBc3NlbyIKb3V0cHV0OiBodG1sX25vdGVib29rCi0tLQoKYGBge3Igc2V0dXAsIGluY2x1ZGU9VH0Ka25pdHI6Om9wdHNfY2h1bmskc2V0KGVjaG8gPSBULCBtZXNzYWdlID0gRiwgd2FybmluZyA9IEYsIGVycm9yID0gRiwgZmlnLndpZHRoPTcsIGZpZy5oZWlnaHQ9NikKYGBgCgoKYGBge3J9CmxpYnJhcnkodGlkeXZlcnNlKSAKbGlicmFyeShwc3ljaCkKaW5zdGFsbC5wYWNrYWdlcygiZ3RoZW9yeSIpCmxpYnJhcnkoZ3RoZW9yeSkKYGBgCgpgYGB7cn0KdGFzazFfZGF0YSA8LSByZWFkX2NzdigiL1VzZXJzL2N5cm9hc3Nlb2RlY2hvY2gvRG93bmxvYWRzL2FzZ18zX3Rhc2tfMS5jc3YiKQp0YXNrMl9kYXRhIDwtIHJlYWRfY3N2KCIvVXNlcnMvY3lyb2Fzc2VvZGVjaG9jaC9Eb3dubG9hZHMvYXNnXzNfdGFza18yLmNzdiIpCmBgYAoKYGBge3J9CmxpYnJhcnkoZ3RoZW9yeSkKCnRhc2sxX2RhdGEgPC0gdGFzazFfZGF0YSAlPiUKICBtdXRhdGUoUXVlc3Rpb24gPSBhcy5mYWN0b3IoUXVlc3Rpb24pKQoKZm9ybXVsYSA8LSBTY29yZSB+ICgxIHwgU3R1ZGVudCkgKyAoMSB8IFF1ZXN0aW9uKQoKZ3N0dWR5X3Jlc3VsdHMgPC0gZ3N0dWR5KGRhdGEgPSB0YXNrMV9kYXRhLCBmb3JtdWxhID0gZm9ybXVsYSkKZ3N0dWR5X3Jlc3VsdHMkY29tcG9uZW50cwpgYGAKYGBge3J9CmRzdHVkeV9yZXN1bHRzXzEwIDwtIGRzdHVkeShnc3R1ZHlfcmVzdWx0cywgZmFjZXRzID0gIlF1ZXN0aW9uIiwgbi5mYWNldHMgPSBjKDEwKSwgY29sbmFtZS5vYmplY3RzID0gIlN0dWRlbnQiKQpyb3VuZChkc3R1ZHlfcmVzdWx0c18xMCRnZW5lcmFsaXphYmlsaXR5LCAzKQoKZHN0dWR5X3Jlc3VsdHNfOCA8LSBkc3R1ZHkoZ3N0dWR5X3Jlc3VsdHMsIGZhY2V0cyA9ICJRdWVzdGlvbiIsIG4uZmFjZXRzID0gYyg4KSwgY29sbmFtZS5vYmplY3RzID0gIlN0dWRlbnQiKQpyb3VuZChkc3R1ZHlfcmVzdWx0c184JGdlbmVyYWxpemFiaWxpdHksIDMpCgpkc3R1ZHlfcmVzdWx0c181IDwtIGRzdHVkeShnc3R1ZHlfcmVzdWx0cywgZmFjZXRzID0gIlF1ZXN0aW9uIiwgbi5mYWNldHMgPSBjKDUpLCBjb2xuYW1lLm9iamVjdHMgPSAiU3R1ZGVudCIpCnJvdW5kKGRzdHVkeV9yZXN1bHRzXzUkZ2VuZXJhbGl6YWJpbGl0eSwgMykKYGBgCgpgYGB7cn0KaWYgKCFyZXF1aXJlTmFtZXNwYWNlKCJsYXZhYW4iLCBxdWlldGx5ID0gVFJVRSkpIHsKICBpbnN0YWxsLnBhY2thZ2VzKCJsYXZhYW4iKQp9CmxpYnJhcnkobGF2YWFuKQoKYW54aWV0eV9tb2RlbCA8LSAnYW54aWV0eSA9fiBRMSArIFEyICsgUTMgKyBRNCArIFE1ICsgUTYgKyBRNyArIFE4ICsgUTkgKyBRMTAnCgpjZmFfZml0IDwtIGNmYShhbnhpZXR5X21vZGVsLCBkYXRhID0gdGFzazJfZGF0YSkKCnN1bW1hcnkoY2ZhX2ZpdCwgZml0Lm1lYXN1cmVzID0gVFJVRSwgc3RhbmRhcmRpemVkID0gVFJVRSkKYGBgCgoKYGBge3J9CmlmICghcmVxdWlyZU5hbWVzcGFjZSgic2VtVG9vbHMiLCBxdWlldGx5ID0gVFJVRSkpIHsKICBpbnN0YWxsLnBhY2thZ2VzKCJzZW1Ub29scyIpCn0KbGlicmFyeShzZW1Ub29scykKCnJlbGlhYmlsaXR5X3Jlc3VsdHMgPC0gY29tcFJlbFNFTShjZmFfZml0KQpyZWxpYWJpbGl0eV9yZXN1bHRzCmBgYAoK