conditional.x = TRUE

897 views
Skip to first unread message

MJ LEE

unread,
Nov 4, 2016, 1:33:35 PM11/4/16
to lavaan
Hello all,

I am curious the command "conditional.x=TRUE." Could please anybody give me some examples where one might consider using the command or not? I was running a path analysis, and I tried the analysis with TRUE and with FALSE both. I did not see any difference in the results.

Thanks! 

 

Yves Rosseel

unread,
Nov 9, 2016, 10:03:17 AM11/9/16
to lav...@googlegroups.com
On 11/04/2016 06:33 PM, MJ LEE wrote:
> Hello all,
>
> I am curious the command "conditional.x=TRUE." Could please anybody give
> me some examples where one might consider using the command or not?

lavaan uses this by default, every time you have categorical
(endogenous) data, AND you have exogenous observed covariates.

What it does is the following: the covariates are regressed out first,
and the residual (polychoric/polyserial) correlations become the sample
statistics.

The advantage is the we reduce the size of the problem, and we do not
need to care about the distribution of the exogenous variables. If you
have p endogenous variables, and q exogenous covariates, then
conditional.x = FALSE will analyze the full (p+q)x(p+q) covariance
matrix. If conditional.x = TRUE, only a pxp *residual* covariance matrix
is used.

> was running a path analysis, and I tried the analysis with TRUE and with
> FALSE both. I did not see any difference in the results.

In the continuous case, with complete data, you should get the same
results.

Yves.

MJ LEE

unread,
Nov 9, 2016, 2:51:42 PM11/9/16
to lavaan
Thank you so much for the reply! just one more thing! I think I can have the same benefit from using fixed.x=TRUE. If you could, could you please explain how it is different from using fixed.x=TRUE?

Thank you in advance!

Yves Rosseel

unread,
Nov 16, 2016, 4:37:03 AM11/16/16
to lav...@googlegroups.com
On 11/09/2016 08:51 PM, MJ LEE wrote:
> Thank you so much for the reply! just one more thing! I think I can have
> the same benefit from using fixed.x=TRUE. If you could, could you please
> explain how it is different from using fixed.x=TRUE?

In principle, there are 4 combinations: fixed.x = TRUE/FALSE and
conditional.x = TRUE/FALSE.

Only 3 of them are currently (0.5) implemented in lavaan: if
conditional.x = TRUE, we always assume fixed.x = TRUE.

But you can have conditional.x = FALSE and fixed.x = TRUE (or FALSE).

The difference is this:

- conditional.x = TRUE implies that all exogenous covariates are
regressed out first, and only the residual covariance/correlation matrix
is used; if FALSE, the full covariance/correlation matrix (including the
exogenous covariates) is used

- fixed.x = TRUE treats the exogenous covariates as fixed, and will not
add parameters in the model to estimates their variances and covariances
(instead, they are fixed at their sample-based values).

Yves.

MJ LEE

unread,
Nov 27, 2016, 4:17:14 PM11/27/16
to lavaan
Thank you so much! It really helped!
Reply all
Reply to author
Forward
0 new messages