广义线性混合模型中的事后检验:怎么办?

时间:2014-09-20 14:19:36

标签: r count nested mixed-models

我正在使用R中的混合模型(glmmadmb)来计算数据。我有一个随机因素(Locality)和一个固定因子(Habitat)。固定因子有两个级别,随机因子有七个级别。我想在七个随机因素水平中的每一个中对两个固定因子水平进行比较。但是我不知道如何在R中做到这一点。我对R很新。任何人都可以帮助我吗?非常感谢。

这是我过分散数据的glmm公式:

    model<-glmmadmb(Species.abundance~Habitat(1|Locality:Habitat),
                    data=data,family='nbinom1')

我只用“Habitat”尝试了它,但显然没有考虑Locality:

    summary(glht(model,linfct=mcp(Habitat='Tukey')))

 Simultaneous Tests for General Linear Hypotheses

Multiple Comparisons of Means: Tukey Contrasts


Fit: glmmadmb(formula = Species.abundance ~ Habitat + (1 | Locality:Habitat), 
    data = data, family = "nbinom1")

Linear Hypotheses:
                     Estimate Std. Error z value Pr(>|z|)
Fynbos - Forest == 0  -0.2614     0.2010  -1.301    0.193
(Adjusted p values reported -- single-step method)

1 个答案:

答案 0 :(得分:0)

我可能只是在每个地方进行单独的测试,如果你愿意,可以进行多重比较修正。来自plyr的函数很方便,但不是必需的,例如

library(plyr)
library(glmmADMB)
model.list <- dlply(data,"Locality",glmmadmb,
                    formula=Species.abundance~Habitat,
                    family="nbinom1")
p.vals <- laply(model.list,function(x) coef(summary(x))[2,"Pr(>|z|)"])
p.adjust(pvals)

(我不能保证这实际上有效,因为你没有给出一个可重复的例子而且我不愿意发明一个......)