I am running a Monte Carlo simulation of Bayesian Approximate Measurement Invariance (BAMI) in blavaan and want to confirm the correct implementation before committing to a large HPC run.
For a two-group single-factor CFA with p=6 items, my intended implementation is:
bcfa("eta =~ y1 + y2 + y3 + y4 + y5 + y6", data = data, group = "group", group.equal = c("loadings", "intercepts"), wiggle = "intercepts", wiggle.sd = 0.10, target = "stan")Three specific questions:
- Is this the correct syntax to implement Muthén & Asparouhov (2013) BAMI — specifically, does wiggle = "intercepts" with wiggle.sd = 0.10 place a N(0, 0.010) prior on the intercept differences across groups, or on the absolute Group 2 intercepts?
- A previous Google Groups post confirmed that blavaan's wiggle is "equivalent to the sd on the difference between parameters as Mplus applies it." Can anyone confirm this equivalence holds in the current Stan target implementation, and whether it holds when Group 1 intercept posteriors are uncertain (i.e., is the centring on the posterior mean or on a draw-by-draw basis)?
- For detection, I plan to extract the posterior of (ν_j(G2) − ν_j(G1)) at each MCMC draw and flag items where the 95% CI excludes zero. Is there a built-in blavaan function for extracting per-item intercept difference posteriors, or should I extract the raw MCMC draws via blavInspect(fit, "mcmc") and compute differences manually