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)
model <-
'
m ~ a*x
y ~ b*m
ab := a*b
'
fit <- sem(model, data = dat, fixed.x = FALSE)
# Add "*" based on 'pvalue'
add_sig(fit)
# Add "*" for standardized solution
add_sig(fit, standardized = TRUE)
# Add "*" based on confidence interval
add_sig(fit, use = "ci")
# Add "*" for standardized solution based on confidence interval
add_sig(fit, standardized = TRUE, use = "ci")
# Add "*" for standardized solution based on confidence interval
# and 'pvalue'.
add_sig(fit, standardized = TRUE, use = c("ci", "pvalue"))
# Can also accept a parameter estimates table
est <- parameterEstimates(fit)
add_sig(est)
# So it can be used with some other functions in semhelpinghands
add_sig(filter_by(est, op = "~"))
# Piping can also be used
est |> filter_by(op = "~") |>
add_sig()
Run the code above in your browser using DataLab