列表。
我有一个使用lmer.test包并调用glmer的通用混合模型。我可以得到一个好的模型,但是我无法获得LSMEANS和Diff的输出。
这就是我所拥有的
library(plyr)
library(lubridate)
library(chron)
library(reshape)
library(lattice)
library(car)
library(lmerTest)
fm17<-glmer(I(Steps+1)~Treatment + treatdate +Weight + BF+ (1|Block) +(0+treatdate|exp.unit), family=poisson)
summary(fm17,ddf="Kenward-Roger")
qqnorm(resid(fm17),main="QQ Model 17")
plot(fm17,main="Residual Model 17")
anova(fm17, ddf="Kenward-Roger")
lsmeans(fm17)
difflsmeans(fm17)
一直运行良好,直到LSMEANS声明
这是输出 摘要(fm17,DDF = “Kenward-罗杰”) qqnorm(resid(fm17),main =“QQ Model 17”) 情节(fm17,main =“剩余模型17”) anova(fm17,ddf =“Kenward-Roger”) 以上所有工作都很好
LSMEANS(fm17) lsmeans中的错误(fm17):模型不是线性混合效应模型 difflsmeans(fm17) difflsmeans中的错误(fm17):模型不是线性混合效应模型
如何获得有关如何获得该输出的任何帮助将非常感激。
答案 0 :(得分:2)
lsmeans 包支持glmerMod
个对象,但它不支持这些模型的Kenward-Rogers df(这些依赖的 pbkrtest 包也不支持上)。你想要什么因素?您需要在通话中为其命名。做这样的事情
detach(lmerTest)
library(lsmeans)
lsmeans(fm17, "Treatment")
pairs(.Last.value)
df在结果中显示为NA
,表示使用了渐近结果($ z $ tests和CI)。
答案 1 :(得分:1)
lmerTest仅支持线性混合效果模型(lmer对象)。您使用的anova方法实际上来自lme4包,这就是您没有收到错误的原因 - 模型fm17属于glmerMod类。在lmerTest中,只重新指定了lmer对象的anova。您使用的lsmeans和difflsmeans函数来自lmerTest包,因此会给出一个错误,指出您的模型不是lmer对象。