我有一个混合模型,我试图找到我的随机效应的重要性。该模型是一个具有零膨胀beta分布的混合模型,我使用R包glmmTMB构建,具有以下功能:
model<-glmmTMB(Overlap~Diff.Long+Diff.Bkp + DiffSeason + (1|Xnumber),ziformula=~1,data=data,family=beta_family())
我想找出变量"xnumber"的意义。我已经读到,我需要做的是一个似然比测试,但不知道如何做到这一点与glmmTMB对象。我试过使用Anova()函数,但我不认为输出给我我想要的:
Anova(model,type="II")
Analysis of Deviance Table (Type II Wald chisquare tests)
Response: Overlap
Chisq Df Pr(>Chisq)
Diff.Long 5.0217 1 0.02503 *
Diff.Bkp 1.4717 1 0.22507
DiffSeason 7.5487 2 0.02295 *
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
有什么建议吗?
由于Xnumber
是产生随机效应的分组变量,因此它不会显示在Anova表中,因为它没有正在测试的系数。为了测试这一项,您可以将其省略(即,估计一个池模型),然后使用lmtest
包中的lrtest()
来计算lr测试。零假设是,混合模型是充分的。以下是glmmTMB()
函数的示例:
library(glmmTMB)
library(lmtest)
m1 <- glmmTMB(count ~ mined + (1|site),
zi=~mined,
family=poisson, data=Salamanders)
m2 <- glmmTMB(count ~ mined,
zi=~mined,
family=poisson, data=Salamanders)
lrtest(m1, m2)
#> Likelihood ratio test
#>
#> Model 1: count ~ mined + (1 | site)
#> Model 2: count ~ mined
#> #Df LogLik Df Chisq Pr(>Chisq)
#> 1 5 -949.23
#> 2 4 -958.96 -1 19.456 1.03e-05 ***
#> ---
#> Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
由reprex包(v2.0.1)在2022-11-25创建
请注意,在这种情况下,由于检验是显著的,所以合并模型是不够的,首选随机效应模型。