lavaan interaction regression model: sample covariance matrix is not positive-definite

713 Views Asked by At

I am running a model with the lavaan R package that predicts a continuous outcome by a continuous and two categorical codes. One of them is a dichotomous variable (let's call it A; 0 = no, 1 = yes) and the other is a three-level categorical variable (let's call it B; 0 = low, medium, 3 = high). Below is an example of the data:

  outcome      gender      age continuous  A    B
1   1.333333        2 23.22404   1.333333  1    0
2   1.500000        2 23.18033   1.833333  1    1
3   1.500000        2 22.37978   2.166667  1    NA
4   2.250000        1 18.74044   1.916667  1    0
5   1.250000        1 22.37978   1.916667  1    1
6   1.500000        2 20.16940   1.500000  1    NA

In addition to a continuous, a dichotomous, and a three-level categorical variable, my model also includes some control variables:

model.1a <- 'outcome ~ gender + age + continuous + A + B

         A ~~ continuous 
         A ~~ B
         continuous ~~ B'
fit.1a <- sem(model=model.1a, data=dat)
summary(fit.1a, fit.measures=TRUE, standardized=TRUE, ci=TRUE, rsquare=T)

In a second step, I also want to include an interaction between variable A and B. For this, I first centered these two variables and then included the interaction in the model:

model.1b <- 'outcome ~ gender + age + continuous + A_centr + B_centr + interaction

         A_centr ~~ continuous
         A_centr ~~ B_centr
         continuous ~~ B_centr
         interaction ~~ 0*gender + 0*age
         gender ~~ age'
fit.1b <- sem(model=model.1b, data=dat)
summary(fit.1b, fit.measures=TRUE, standardized=TRUE, ci=TRUE, rsquare=T)

However, when I run this model, I get the following error:

Error in lav_samplestats_icov(COV = cov[[g]], ridge = ridge, x.idx = x.idx[[g]],  : 
  lavaan ERROR: sample covariance matrix is not positive-definite

From what I can tell, this is the case because the interaction between the two categorical variables is very similar to the original variables, but I am unsure how to solve this. Does anyone have a suggestion for solving the issue?

For your information, I have already tried using the non-centered version for one or both of the categorical variables for creating the interaction term and in the regression model.

0

There are 0 best solutions below