Learn R Programming

DMAR (version 1.0.0)

ecvi: Expected Cross-Validation Index (ECVI) for a Covariance-Structure Model

Description

The ECVI of Browne and Cudeck (1989) estimates how well a fitted model's implied covariance matrix would fit an independent sample of the same size from the same population. It is the single-sample estimate of the cross-validation discrepancy, so a smaller ECVI indicates a model expected to generalize better; ECVI is most useful for comparing competing models fit to the same data. A confidence interval, derived from the noncentral chi square distribution, accompanies the point estimate.

Usage

ecvi(
  fit = NULL,
  chisq = NULL,
  df = NULL,
  npar = NULL,
  n = NULL,
  conf_level = 0.95
)

Value

A data.frame (class dmar_tbl) with rows

ecvi, lower_limit, and upper_limit in the

value column.

Arguments

fit

A fitted lavaan model. Supply this, or the summary statistics below.

chisq, df, npar, n

The model chi square, its degrees of freedom, the number of free parameters, and the total sample size. Used when fit is not supplied, so an ECVI can be obtained from a published fit table.

conf_level

Confidence level for the interval. Defaults to 0.95.

Author

Ken Kelley [email protected]

Details

With \(q\) free parameters and total sample size \(N\), \(\mathrm{ECVI} = (\chi^2 + 2q)/N\), the value the Journal of Statistical Software reference implementation in lavaan reports. Writing \(\hat\lambda = \chi^2 - df\) for the estimated noncentrality, this is \((\hat\lambda + df + 2q)/N\); the confidence interval replaces \(\hat\lambda\) by the lower and upper noncentrality limits from ci_nc_chisq, the same inversion used for the RMSEA interval (see ci_rmsea). ECVI differs from the AIC only by the constant factor \(N\), so the two rank models identically; ECVI is reported because its metric (a discrepancy per observation) and its confidence interval are interpretable on their own.

References

Browne, M. W., & Cudeck, R. (1989). Single sample cross-validation indices for covariance structures. Multivariate Behavioral Research, 24(4), 445--455.

See Also

ci_rmsea, ci_nc_chisq.

Other multivariate and latent variable methods: average_variance_extracted(), bifactor_indices(), cfa_1(), cfa_2(), cfa_k(), ci_eigenvalue(), common_method_marker(), common_method_single_factor(), dmacs(), htmt(), irt_grm(), irt_information(), measurement_alignment(), measurement_invariance(), procrustes_phi(), simple_structure()

Examples

Run this code
# From a published fit table (no model object needed).
ecvi(chisq = 24.361, df = 8, npar = 13, n = 301)

fit <- lavaan::cfa(
  "visual =~ t1_visual_perception + t2_cubes + t4_lozenges
   verbal =~ t6_paragraph_comprehension + t7_sentence + t9_word_meaning",
  data = holzinger_swineford, std.lv = TRUE)
ecvi(fit)

Run the code above in your browser using DataLab