Я хотел бы использовать lme4
для подбора регрессии смешанных эффектов и multcomp
для вычисления парных сравнений. У меня есть сложный набор данных с несколькими непрерывными и категориальными предикторами, но мой вопрос может быть продемонстрирован на примере встроенного ChickWeight
набора данных:
m <- lmer(weight ~ Time * Diet + (1 | Chick), data=ChickWeight, REML=F)
Time
является непрерывным и Diet
категоричным (4 уровня), и на рацион приходится несколько цыплят. Все птенцы начинали с примерно одинакового веса, но их рационы (могут) влиять на скорость их роста, поэтому Diet
перехваты должны быть (более или менее) одинаковыми, но наклоны могут быть разными. Я могу получить парные сравнения для эффекта перехвата Diet
следующим образом:
summary(glht(m, linfct=mcp(Diet = "Tukey")))
и, действительно, они незначительно отличаются, но как я могу сделать аналогичный тест на Time:Diet
эффект? Простое введение термина взаимодействия mcp
приводит к ошибке:
summary(glht(m, linfct=mcp('Time:Diet' = "Tukey")))
Error in summary(glht(m, linfct = mcp(`Time:Diet` = "Tukey"))) :
error in evaluating the argument 'object' in selecting a method for function
'summary': Error in mcp2matrix(model, linfct = linfct) :
Variable(s) ‘Time:Diet’ have been specified in ‘linfct’ but cannot be found in ‘model’!
Time*Diet
, что является просто упрощениемTime + Diet + Time:Diet
. Использованиеanova(m)
илиsummary(m)
подтверждает, что термин взаимодействия находится в модели.