cSEM (version 0.1.0)

testOMF: Test for overall model fit

Description

Bootstrap-based test for overall model fit originally proposed by Beran1985;textualcSEM. See also Dijkstra2015;textualcSEM who first suggested the test in the context of PLS-PM.

Usage

testOMF(
 .object                = NULL, 
 .alpha                 = 0.05, 
 .handle_inadmissibles  = c("drop", "ignore", "replace"), 
 .R                     = 499, 
 .saturated             = FALSE,
 .seed                  = NULL,
 .verbose               = TRUE
)

Arguments

.object

An R object of class cSEMResults resulting from a call to csem().

.alpha

An integer or a numeric vector of significance levels. Defaults to 0.05.

.handle_inadmissibles

Character string. How should inadmissible results be treated? One of "drop", "ignore", or "replace". If "drop", all replications/resamples yielding an inadmissible result will be dropped (i.e. the number of results returned will potentially be less than .R). For "ignore" all results are returned even if all or some of the replications yielded inadmissible results (i.e. number of results returned is equal to .R). For "replace" resampling continues until there are exactly .R admissible solutions. Depending on the frequency of inadmissible solutions this may significantly increase computing time. Defaults to "drop".

.R

Integer. The number of bootstrap replications. Defaults to 499.

.saturated

Logical. Should a saturated structural model be used? Defaults to FALSE.

.seed

Integer or NULL. The random seed to use. Defaults to NULL in which case an arbitrary seed is chosen. Note that the scope of the seed is limited to the body of the function it is used in. Hence, the global seed will not be altered!

.verbose

Logical. Should information (e.g., progress bar) be printed to the console? Defaults to TRUE.

Value

A list of class cSEMTestOMF containing the following list elements:

$Test_statistic

The value of the test statistics.

$Critical_value

The corresponding critical values obtained by the bootstrap.

$Decision

The test decision. One of: FALSE (Reject) or TRUE (Do not reject).

$Information

The .R bootstrap values; The number of admissible results; The seed used and the number of total runs.

Details

testOMF() tests the null hypothesis that the population indicator correlation matrix equals the population model-implied indicator correlation matrix. Several potential test statistics may be used. testOMF() uses three distance measures to assess the distance between the sample indicator correlation matrix and the estimated model-implied indicator correlation matrix, namely the geodesic distance, the squared Euclidean distance, and the standardized root mean square residual (SRMR). The reference distribution for each test statistic is obtained by the bootstrap as proposed by Beran1985;textualcSEM.

If .saturated = TRUE the original structural model is ignored and replaced by a saturated model, i.e. a model in which all constructs are allowed to correlate freely. This is useful to test misspecification of the measurement model in isolation.

References

See Also

csem(), calculateSRMR(), calculateDG(), calculateDL(), cSEMResults, testMICOM(), testMGD()

Examples

Run this code
# NOT RUN {
# ===========================================================================
# Basic usage
# ===========================================================================
model <- "
# Structural model
eta2 ~ eta1
eta3 ~ eta1 + eta2

# (Reflective) measurement model
eta1 =~ y11 + y12 + y13
eta2 =~ y21 + y22 + y23
eta3 =~ y31 + y32 + y33
"

## Estimate
out <- csem(threecommonfactors, model, .approach_weights = "PLS-PM")

## Test
testOMF(out, .R = 50, .verbose = FALSE, .seed = 320)
# }

Run the code above in your browser using DataCamp Workspace