Skip to contents

This function estimates the path from x to y using the path tracing rules, note that it only works with structural parameters, so "=~" are ignored. unless measurement.model = TRUE. you want to use the measurement model, "~" in the mod column of pt.

Usage

trace_path(
  pt,
  x,
  y,
  parenthesis = TRUE,
  missing.cov = FALSE,
  measurement.model = FALSE,
  maxlen = 100,
  ...
)

Arguments

pt

A data frame with columns lhs, op, rhs, and mod, from modsemify(syntax)

x

source variable

y

destination variable

parenthesis

if TRUE, the output will be enclosed in parenthesis

missing.cov

if TRUE covariances missing from the model syntax will be added

measurement.model

if TRUE, the function will use the measurement model

maxlen

maximum length of a path before aborting

...

additional arguments passed to trace_path

Value

A string with the estimated path (simplified if possible)

Examples

library(modsem)
m1 <- '
  # Outer Model
  X =~ x1 + x2 +x3
  Y =~ y1 + y2 + y3
  Z =~ z1 + z2 + z3

  # Inner model
  Y ~ X + Z + X:Z
'
pt <- modsemify(m1)
trace_path(pt, x = "Y", y = "Y", missing.cov = TRUE) # variance of Y
#> [1] "(X~~X * Y~X ^ 2 + 2 * X~~Z * Y~X * Y~Z + Y~Z ^ 2 * Z~~Z + Y~~Y)"