Skip to contents

outputInvarCompTab() is used to compare the model fit of nested dyadic invariance models in order from most parsimonious (residual) to least parsimonious (configural)

Usage

outputInvarCompTab(mods, gtTab = FALSE, writeTo = NULL, fileName = NULL)

Arguments

mods

A list of nested lavaan dyadic invariance models, in the order of residual, intercept, loading, configural

gtTab

A logical input indicating whether to generate the output in gt::gt() table object format (TRUE). By default (FALSE), the output is generated in tibble::tibble() format. Users can also apply the writeTo argument if they wish to export the gt:gt() table object.

writeTo

A character string specifying a directory path to where the gt::gt() table object should be saved. If set to ".", the file will be written to the current working directory. The default is NULL, and examples use a temporary directory created by tempdir(). writeTo is only relevant if gtTab = TRUE.

fileName

A character string specifying a desired base name for the output gt::gt() file. If a fileName is not provided (i.e., fileName = NULL), then a default will be used (i.e., "dySEM_table"). The resulting base name will automatically be appended with a .rtf file extension. fileName is only relevant if gtTab = TRUE and writeTo is specified.

Value

A list. More specifically, a tibble()—if gtTab = FALSE (default)—or gt::gt() object—if gtTab = TRUE—of model fit statistics for each model, as well as the difference in fit statistics between each model and the previous model

Details

  • If gtTab = TRUE and writeTo is specified, then output will simultaneously be saved as a .rtf file to the user's specified directory.

  • If output file is successfully saved, a confirmation message will be printed to the console.

  • If a file with the same name already exists in the user's chosen directory, it will be overwritten.

Examples


dvn <- scrapeVarCross(dat = commitmentQ, x_order = "spi",
x_stem = "sat.g", x_delim1 = ".", x_delim2="_", distinguish_1="1", distinguish_2="2")

sat.residual.script <- scriptCFA(dvn, lvname = "Sat",
constr_dy_meas = c("loadings", "intercepts", "residuals"), constr_dy_struct = "none")

sat.intercept.script <- scriptCFA(dvn, lvname = "Sat",
constr_dy_meas = c("loadings", "intercepts"), constr_dy_struct = "none")

sat.loading.script <- scriptCFA(dvn, lvname = "Sat",
constr_dy_meas = c("loadings"), constr_dy_struct = "none")

sat.config.script <- scriptCFA(dvn, lvname = "Sat",
constr_dy_meas = "none", constr_dy_struct = "none")

sat.residual.fit <- lavaan::cfa(sat.residual.script, data = commitmentQ,
std.lv = FALSE, auto.fix.first= FALSE, meanstructure = TRUE)

sat.intercept.fit <- lavaan::cfa(sat.intercept.script, data = commitmentQ,
std.lv = FALSE, auto.fix.first= FALSE, meanstructure = TRUE)

sat.loading.fit <- lavaan::cfa(sat.loading.script, data = commitmentQ,
std.lv = FALSE, auto.fix.first= FALSE, meanstructure = TRUE)

sat.config.fit <- lavaan::cfa(sat.config.script, data = commitmentQ,
std.lv = FALSE, auto.fix.first= FALSE, meanstructure = TRUE)

mods <- list(sat.residual.fit, sat.intercept.fit, sat.loading.fit, sat.config.fit)

outputInvarCompTab(mods,
gtTab = TRUE, writeTo = tempdir(), fileName = "dCFA_Invar")
#> Output stored in: /tmp/Rtmpu7vXEu/dCFA_Invar.rtf
mod chisq df pvalue aic bic rmsea cfi chisq_diff df_diff p_diff aic_diff bic_diff rmsea_diff cfi_diff
residual 78.842 42 0.000 3855.175 3918.308 0.087 0.970 NA NA NA NA NA NA NA
intercept 60.321 37 0.009 3846.654 3923.512 0.074 0.981 -18.521 -5 0.002 -8.521 5.204 -0.013 0.011
loading 58.810 33 0.004 3853.143 3940.981 0.082 0.979 -1.511 -4 0.825 6.489 17.469 0.008 -0.002
configural 53.026 29 0.004 3855.359 3954.176 0.085 0.981 -5.784 -4 0.216 2.216 13.196 0.002 0.001