我想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)
确认交互作用项在模型中。