考虑到我对 GAM 的世界非常陌生,我实际上是出于必要而不是选择使用它,但我认为无论如何这可能是一个学习新东西的机会。
最初我希望用 GLMM 对我的数据进行建模,这对我来说在分配嵌套随机变量的方式上感觉很自然。在我的研究中,使用lme4
我会写(1|SURVEYGR/YEAR/PlotID)
. 这意味着PlotID
嵌套在YEAR
其中嵌套在 中SURVEYGR
。但是当涉及到mgcv
包时,我还没有设法找到等效表达式的明确解释。例如,我已经看到可以使用bs=re
(re=random effect) 参数,s(YEAR, bs="re")
而在其他情况下,例如这个博客,我已经看到了许多随机变量,s(SURVEYGR,YEAR,PlotID, bs="re")
但是有很多事情发生并且很难取笑找出这段代码的含义。问题是,我不确定嵌套的随机变量应该如何构造
所以最终我想知道mgcv
GAM 模型的等效代码对于以下编写的 GLMM 模型是什么lme4
:
glmer.nb(count ~ vegetation.cover + temperature +
(1|SURVEYGR/YEAR/PlotID)
, na.action = "na.fail"
, data = dd, verbose=T)
猜测可能是这样的
gam(count ~ s(vegetation.cover) + s(temperature) +
s(SURV.GR,YEAR,PlotID, bs="re")
, family = nb()
, data=dd, method="REML")
编辑
有点窥探在SO上出现了这篇文章,其中将评论翻译成我的问题建议单独包括术语,然后嵌套随机效应术语的交互,如下所示:
+ s(SURV.GR, bs="re") + s(SURV.GR,YEAR, bs="re") + s(SURV.GR,YEAR,PlotID, bs="re")
有什么想法吗?