simple regression with ordered IVs in lavaan

118 views
Skip to first unread message

b.ez...@gmail.com

unread,
Aug 16, 2020, 11:55:30 AM8/16/20
to lavaan
Hi all
I have used lavaan for simple regression (one dependent and multiple independent variables). as most of my IVs are order,  i have declared it in my commands. the results is a Waring. my questions are
1- my method is correct to run simple regression in lavaan?
2- can i ignore this warning?  

 
regres.mod2 <- 'prevention.score~age+
gender+
job+
f.number+
f.dis.number+
familiyrela1+
familyrela2+
friendrela1+
friendrela2+
income+
saving+
quarantine+
selfrisk+
othersrisk+
succeptility.score'

regres.fit2 <- sem(regres.mod2,data = dat1,
ordered=c("age","gender","job","f.number","f.dis.number","familiyrela1",
"familyrela2","friendrela1","friendrela2","income","saving","quarantine","selfrisk","othersrisk"))
summary(regres.fit2, fit.measures = TRUE,standardized=TRUE,rsquare=TRUE)

Warning messages:
1: In lav_data_full(data = data, group = group, cluster = cluster,  :
  lavaan WARNING: exogenous variable(s) declared as ordered in data: age gender job f.number f.dis.number familiyrela1 familyrela2 friendrela1 friendrela2 income saving quarantine selfrisk othersrisk
2: In lav_partable_check(lavpartable, categorical = lavoptions$categorical,  :
  lavaan WARNING: parameter table does not contain thresholds 
3: In lav_partable_check(lavpartable, categorical = lavoptions$categorical,  :
  lavaan WARNING: parameter table does not contain thresholds

 

Patrick (Malone Quantitative)

unread,
Aug 16, 2020, 11:59:12 AM8/16/20
to lav...@googlegroups.com
Exogenous variables should not be declared as ordered.

The only time I can think of when exogenous variables get special handling is if they're multi-group nominal.

--
You received this message because you are subscribed to the Google Groups "lavaan" group.
To unsubscribe from this group and stop receiving emails from it, send an email to lavaan+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/lavaan/97f54660-5c5d-4013-88c3-87ce5380c251n%40googlegroups.com.


--
Patrick S. Malone, Ph.D., Malone Quantitative
NEW Service Models: http://malonequantitative.com

He/Him/His

balal izanloo

unread,
Aug 16, 2020, 2:17:45 PM8/16/20
to lav...@googlegroups.com
Thanks 
If I understand correctly, I have to run my analysis without an ordered option and lavaan automatically detects ordered variables and computes corrected correlation between variables?
 

Patrick (Malone Quantitative)

unread,
Aug 16, 2020, 4:25:52 PM8/16/20
to lav...@googlegroups.com
It doesn't detect them per se, but broadly speaking SEM estimation from raw data (which is now the norm) doesn't require distributional assumptions about the exogenous variables.

balal izanloo

unread,
Aug 16, 2020, 11:45:36 PM8/16/20
to lav...@googlegroups.com
What you seed about distributional assumptions for exogenous variables in SEM when analysing raw data is in contrary to my knowledge. Do you have any reference for it?


Patrick (Malone Quantitative)

unread,
Aug 17, 2020, 8:03:59 AM8/17/20
to lav...@googlegroups.com
Not offhand,  but Yves has said as much recently (as do the Muthens). Perhaps he can clarify when he's back from vacation 

Terrence Jorgensen

unread,
Aug 17, 2020, 4:32:08 PM8/17/20
to lavaan
What you seed about distributional assumptions for exogenous variables in SEM when analysing raw data is in contrary to my knowledge.

Lack of assumptions is what makes them exogenous.
 
Do you have any reference for it?


There is no explicit language that there are no assumptions about X, but rather that the model's assumptions are applied to Y conditional on X.  This is also consistent with OLS regression models, in which X is assumed fixed (no assumptions needed), and assumptions are only made about Y | X (i.e., the residuals).

Terrence D. Jorgensen
Assistant Professor, Methods and Statistics
Research Institute for Child Development and Education, the University of Amsterdam

balal izanloo

unread,
Aug 18, 2020, 1:09:51 AM8/18/20
to lav...@googlegroups.com
Thanks Terrence
I repeat my questions explicitly because I think the answers are not what I want. exactly my questions are:

1) Since in the SEM framework we can compute appropriate corrections for different types of variables (nominal, ordinal, interval and ratio), can we run a simple regression analysis in that my DV and IVs are ordinal,  without any worry about the measurement level of variables (IVs and DV)?
 
2) . I think lavaan automatically detects and computes appropriate correlations depending on the type of variables and uses this correlation for simple regression. but i am not sure about it. 

--
You received this message because you are subscribed to the Google Groups "lavaan" group.
To unsubscribe from this group and stop receiving emails from it, send an email to lavaan+un...@googlegroups.com.

Terrence Jorgensen

unread,
Aug 19, 2020, 4:19:09 AM8/19/20
to lavaan
1) Since in the SEM framework we can compute appropriate corrections for different types of variables (nominal, ordinal, interval and ratio),

The assumption (not correction) about ordinal data is that they are a discretized version of a continuous latent response, assumed normal.  Continuous data are assumed normal, although the SEs and test statistics can be corrected for deviations from normality (specifically, observed multivariate kurtosis is used to estimate the degree to which tests assuming normality would be biased, then it is used to correct for that bias).  Continuous data are implicitly assumed to be unbounded, therefore interval (ratio is bound below by zero, by definition), although ratio in practice is fine if the mean is several SDs above zero.

  
can we run a simple regression analysis in that my DV and IVs are ordinal,  without any worry about the measurement level of variables (IVs and DV)?

No, DVs are endogenous (you are trying to explain them).  If your outcome is ordinal, you need to assume it measures a normal latent response (declare it using the ordered= argument), so it is probit regression, not ordinary regression.  However, the results can be interpreted as ordinary regression if the true latent response were the outcome, with location and scale arbitrarily defined by the identification constraints on the intercept and residual variance (theta parameterization) or scale parameter (default delta parameterization), the latter of which is the reciprocal of the marginal SD.

Under fixed.x=TRUE (default), you do not need to assume anything about the exogenous variables, because you are not explaining them.  If you want to assume an ordinal IV has a linear effect (i.e., the distance between categories is equal, so it is effectively interval), then you can just treat it as continuous and estimate a single slope.  If you do not want to assume a linear effect, you can create K-1 dummy codes to estimate multiple slopes, just like you would for nominal data.  Or you could get clever and calculate other types of contrasts, such as polynomial contrasts, to use instead of dummy codes (see any regression textbook, such as Cohen Cohen West & Aiken).

 2) . I think lavaan automatically detects and computes appropriate correlations depending on the type of variables and uses this correlation for simple regression. but i am not sure about it. 

It does so for endogenous variables.  For exogenous variables, it does not estimate anything, it only uses the observed summary statistics, thus no assumptions are made about the distribution.  The linearity assumption is under your control, as described above.
Reply all
Reply to author
Forward
0 new messages