Lavaan: как задать условия взаимодействия в SEM
Я использую Lavaan и только наблюдаемые переменные (без скрытых переменных). Я хотел бы включить термин взаимодействия в модель, но не уверен, как это сделать.
Это то, что у меня есть
model4 <-'
interac =~ var1 * var2
Ent ~ age
presu ~ age + interac
protein ~ age + fat
fat ~ age
tempo ~ age +interac+protein
score ~sex+education+presu+tempo
'
fit <- sem(model4, data=mydata)
summary(fit4, fit.measures=TRUE)
(все переменные были масштабированы перед запуском, потому что у меня были некоторые проблемы, когда некоторые переменные были в 100 раз больше других).
Мне интересно, правильно ли это? У меня нет основных эффектов взаимодействия в регрессии? Разве они не должны быть включены? Когда я добавляю термин взаимодействия непосредственно в регрессию (var1*var2), я получаю 1 в качестве оценки, так что это должно быть неправильно...
1 ответ
Нет, это не так. Для взаимодействия с переменными манифеста у вас есть две альтернативы:
1 - создать термин взаимодействия вне лавы, например:
mydata$interac <- mydata$var1 * mydata$var2
или же
2 - используйте
:
оператор:
model4 <-'
Ent ~ age
presu ~ age + var1:var2 #interaction and age as predictors
protein ~ age + fat
fat ~ age
tempo ~ age + var1:var2 + protein #interaction, age and protein as predictors
score ~sex+education+presu+tempo
'
fit <- sem(model4, data=mydata)
summary(fit4, fit.measures=TRUE)