Learn R Programming

semhelpinghands (version 0.1.14)

print.fit_by_models: Print a 'fit_by_models' Object

Description

Print method for a 'fit_by_models' object

Usage

# S3 method for fit_by_models
print(
  x,
  ...,
  nd = 3,
  type = c("compact"),
  remove_all_na = TRUE,
  measures_compact = c("npar", "chisq", "chisq.scaled", "df", "df.scaled", "pvalue",
    "pvalue.scaled", "chisq.scaling.factor", "cfi", "cfi.robust", "tli", "tli.robust",
    "aic", "bic", "bic2", "rmsea", "rmsea.ci.level", "rmsea.ci.lower", "rmsea.ci.upper",
    "rmsea.close.h0", "rmsea.pvalue", "rmsea.robust", "rmsea.ci.lower.robust",
    "rmsea.ci.upper.robust", "rmsea.pvalue.robust", "srmr", "srmr_nomean")
)

Value

x is returned invisibly. Called for its side effect.

Arguments

x

Object of the class fit_by_models.

...

Optional arguments to be passed to print() methods.

nd

The number of digits to be printed. Default is 3. (Scientific notation will never be used.)

type

String. The type of the output. Currently only supports one type, "compact".

remove_all_na

Logical. Whether rows with NA in all columns will be removed. Default is TRUE.

measures_compact

If output type is "compact", the character vector of fit measures to be printed. The names should be the names of the output of lavaan::fitMeasures(), in vector form.

Details

This function is intended to print the fit measures of one or more groups in a simple and compact table for quick preview. For a well-organized layout, call lavaan::fitMeasures() and set output to "text". For comparing the models with notations on models with the best fit on each measures, use semTools::compareFit().

See Also

fitMeasures_by_models()

Examples

Run this code

library(lavaan)
set.seed(5478374)
n <- 50
x <- runif(n) - .5
m <- .40 * x + rnorm(n, 0, sqrt(1 - .40))
y <- .30 * m + rnorm(n, 0, sqrt(1 - .30))
dat <- data.frame(x = x, y = y, m = m)
model1 <-
'
m ~ a*x
y ~ b*m
ab := a*b
'
fit1 <- sem(model1, data = dat, fixed.x = FALSE)
model2 <-
'
m ~ a*x
y ~ b*m + x
ab := a*b
'
fit2 <- sem(model2, data = dat, fixed.x = FALSE)

out <- fitMeasures_by_models(list(no_direct = fit1,
                                  direct = fit2))
out

print(out, nd = 4, measures_compact = c("chisq", "cfi", "rmsea"))

Run the code above in your browser using DataLab