simulateData function and probably not very useful
except for quick validation purposes (e.g. checking that an implied vanishing
tetrad truly vanishes in simulated data). For more elaborate simulation studies, please
use the lavaan package or similar facilities in other packages.
simulateSEM(x, b.lower = -0.6, b.upper = 0.6, eps = 1, N = 500, standardized = TRUE)standardized=FALSE).If standardized=TRUE, all path coefficients are interpreted as standardized coefficients.
But not all standardized coefficients are compatible with all graph structures.
For instance, the graph structure z <- x -> y -> z is incompatible with standardized
coefficients of 0.9, since this would imply that the variance of z must be larger than
1. For large graphs with many parallel paths, it can be very difficult to find coefficients
that work.
N values for each variable in x.
b.lower and b.upper (inclusive; set
both parameters to the same value for constant path coefficients). Each bidirected
arrow a <-> b is replaced by a substructure a <- L -> b, where L is an exogenous latent
variable. Path coefficients on such substructures are set to sqrt(x), where
x is again chosen at random from the given interval; if x is negative,
one path coefficient is set to -sqrt(x) and the other to sqrt(x). All
residual variances are set to eps.
## Simulate data with pre-defined path coefficients of -.6
g <- dagitty('dag{z -> x <- y}')
x <- simulateSEM( g, .707, .707 ) # sqrt(2)/2 is largest possible
cov(x)
Run the code above in your browser using DataLab