Performs an EPC-based compensatory-effect diagnostic to assess whether standardized population parameters define a valid population covariance matrix and whether trivially misspecified parameters (relative to a smallest effect size of interest; SESOI) can generate EPCs exceeding the SESOI.
epcEquivCheck(lavaanObj, minRelEffect = 0.75, stdLoad = 0.4, cor = 0.1,
corLatent = NULL, corResidual = NULL, stdBeta = 0.1)An object of class "epcEquivCheckStd" containing:
feasible: Logical indicator of whether a valid
standardized population model exists.
any_M: Logical indicator of whether any EPC exceeded
the SESOI under the evaluated perturbations.
compensatory: Character string summarizing the presence
of the compensatory effect (e.g., "NOT PRONOUNCED",
"PRONOUNCED", or "NOT APPLICABLE").
M_table: Data frame summarizing EPCs exceeding the SESOI,
if any.
testeffect: Data frame reporting the smallest tested
standardized perturbations in each direction.
A fitted lavaan object representing the target model.
A scalar in (0, 1) specifying the minimum relative
magnitude of the standardized perturbation to be evaluated. The
default value of 0.75 indicates that perturbations equal to 75\
the SESOI are treated as trivial. If EPCs exceed the SESOI under
such perturbations, the compensatory effect is classified as
"PRONOUNCED".
Standardized factor loading used to define the SESOI for loading misspecifications.
Standardized correlation used as a default SESOI for
covariance misspecifications. This value is used for both latent
and residual covariances unless overridden by
corLatent or corResidual.
Standardized latent factor correlation used to
define the SESOI for latent covariance misspecifications. If
NULL, defaults to cor.
Standardized residual correlation used to define
the SESOI for indicator residual covariance misspecifications. If
NULL, defaults to cor.
Standardized regression coefficient used to define the SESOI for structural misspecifications.
The compensatory effect is evaluated by constructing implied population models under targeted standardized parameter perturbations and examining resulting EPC behavior. If EPCs exceed the SESOI under perturbations that are trivial in magnitude (e.g., 75% of the SESOI), substantial EPC classifications may reflect inflation due to compensatory distortions rather than genuine substantive misspecification.
This function operates on standardized parameters and currently supports recursive SEMs with continuous indicators only.
The procedure first verifies whether the standardized parameter values
imply a positive definite population covariance matrix. It then evaluates
EPC behavior under both positive and negative trivial misspecifications
by repeatedly constructing implied population covariance matrices with
perturbed parameters (minRelEffect \(\times\) SESOI), refitting
the model, and re-evaluating EPC classifications.
If at least one trivial perturbation produces an EPC exceeding the SESOI,
the compensatory effect is labeled "PRONOUNCED". Otherwise, it is
labeled "NOT PRONOUNCED".
Models with categorical indicators, formative indicators, mean structures, or multiple-group structures are not supported.
epcEquivFit
library(lavaan)
one.model <- ' onefactor =~ x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9 '
fit <- cfa(one.model, data = HolzingerSwineford1939)
# \donttest{
epcEquivCheck(fit)
# }
Run the code above in your browser using DataLab