Check the output passed to semlbci()
Usage
check_sem_out(
sem_out,
robust = c("none", "satorra.2000"),
multigroup_ok = TRUE
)
Arguments
- sem_out
The output from an SEM analysis. Currently only supports a lavaan::lavaan object.
- robust
Whether the LBCI based on robust likelihood ratio test is to be found. Only "satorra.2000" in
lavaan::lavTestLRT()
is supported for now. If"none"
, the default, then likelihood ratio test based on maximum likelihood estimation will be used.- multigroup_ok
If
TRUE
, will not check whether the model is a multiple-group model. Default isTRUE
.
Value
A numeric vector of one element. If 0, the model and
estimation method are officially supported. If larger than zero,
then the model and method are not officially supported but users
can still try to use semlbci()
on it at their own risks. If less
than zero, then the model and/or the method are officially not
supported.
The attributes info
contains the reason for a value other than
zero.
Details
It checks whether the model and the estimation method in
the sem_out
object passed to semlbci()
are supported by the
current version of semlbci()
. This function is to be used by
semlbci()
but is exported such that the compatibility of an SEM
output can be checked directly.
Estimation methods (estimator
in lavaan::lavaan()
) currently
supported:
Maximum likelihood (
ML
) and its variants (e.g.,MLM
,MLR
). For methods with robust test statistics (e.g.,MLR
), only robust LBCIs (robust = "satorra.2000"
in callingsemlbci()
) can be requested.
Estimation methods not yet supported:
Generalized least squares (
GLS
).Weighted least squares (a.k.a. asymptotically distribution free) (
WLS
) and its variants (e.g.,WLSMV
).Unweighted least squares (
ULS
).Diagonally weighted least squares (
DWLS
).Other methods not listed.
Models supported:
Single-group models with continuous variables.
Multiple-group models with continuous variables.
Models not tested:
Models with categorical variables.
Models not yet supported:
Models with formative factors.
Multilevel models.
Examples
library(lavaan)
#> This is lavaan 0.6-17
#> lavaan is FREE software! Please report any bugs.
data(cfa_two_factors)
mod <-
"
f1 =~ x1 + x2 + x3
f2 =~ x4 + x5 + x6
"
fit <- sem(mod, cfa_two_factors)
# Should be 0
check_sem_out(fit)
#> [1] 0
fit2 <- sem(mod, cfa_two_factors, estimator = "DWLS")
#> Warning: lavaan WARNING: estimator “DWLS” is not recommended for continuous data.
#> Did you forget to set the ordered= argument?
# Should be negative because DWLS is officially not supported
check_sem_out(fit2)
#> [1] -2
#> attr(,"info")
#> [1] "Estimator DWLS is not yet supported."
#> [2] "Only support models fitted with likelihood set to 'normal'."
fit3 <- sem(mod, cfa_two_factors, estimator = "MLR")
# Should be negative because MLR is supported only if
# robust is set to "satorra.2000"
check_sem_out(fit3)
#> [1] -1
#> attr(,"info")
#> [1] "Test method(s) yuan.bentler.mplus is/are not yet supported when 'robust' is 'none'."
# Should be zero because robust is set to "satorra.2000"
check_sem_out(fit3, robust = "satorra.2000")
#> [1] 0