具有计数数据、嵌套设计和重复测量的 Glmer

机器算法验证 r lme4-nlme 重复测量 嵌套数据
2022-04-05 13:44:58

目前,我尝试为计算的个人(响应变量,整数)拟合模型

不同类型的陷阱(因子解释变量)。

我有两个不同的Biotopes ,每个都有三个Locations

有一天,我将三个陷阱放置在 Biotope 1 中,每个 Trap 都放置在三个位置中的一个位置,此操作重复了 3 次,因此每个 Trap 在第一个 Biotope 的每个位置都使用了一次。第二个Biotope遵循相同的程序,因此第一轮有六天。

这在第 2 轮中重复,因此每个陷阱在每个位置运行两次

添加了实验设计表。

每天还测量生物群落中的湿度和温度。

所以我会问这个模型是否正确

  1. 由于重复实验(2轮)而防止伪复制

  2. 考虑到位置嵌套在 Biotopes 中:

 glmer( Individuals ~ Trap + Location + Temperature + Humidity + 
       (1|Biotope/Location) + (1|round), family=quasipoisson)  

添加了另一个自变量表。(为了防止任何混淆,我为位置分配了新的编号。Biotope 1 中的位置是 1,2,3 - Biotope 2 中的位置是 4,5 和 6)并且温度被排除在外,因为它不再重要。

温度和湿度是日级预测变量吗?

是的,它们每天在进行实验的 Biotope 中进行测量

在每一天中,您似乎会考虑不同的位置,因此可以将位置视为随机分组因素,并且前提是您选择的位置旨在代表更大的一组位置

位置在 Biotope 1 中的三个位置和 Biotope 2 中的其他三个位置始终相同。它们是在实验开始之前选择的,没有改变。

它是否在您的学习中包含您感兴趣的所有可能级别?

是的,对于这项研究,Biotope 1 和 Biotope 2 是唯一的。但在整个实验开始之前,我也可以选择其他 2 个。所以我认为它可以被视为随机的。

对于 Trap,您也必须确定是否将其视为嵌套在位置内/部分交叉/完全交叉,

整个实验都是用我每天使用的三个 Trap 进行的。所以我认为它们不能被视为嵌套?三个 Trap 的区别是我最感兴趣的问题。

到目前为止,模型看起来像这样(对湿度估计的 - exp(0.02459) 而不是 exp(-0.02459) 的解释是否正确?)

    > summary(model1)
       Generalized linear mixed model fit by maximum likelihood (Laplace
  Approximation) [glmerMod]
 Family: Negative Binomial(21.0762)  ( log )
Formula: Ind ~ Trap + Humidity + (1 | Biotop/Location) + (1 | Round)
   Data: Dummy

     AIC      BIC   logLik deviance df.resid 
   322.2    334.9   -153.1    306.2       28 

Scaled residuals: 
     Min       1Q   Median       3Q      Max 
-1.42508 -0.73084  0.08929  0.49095  2.37852 

Random effects:
 Groups          Name        Variance  Std.Dev. 
 Location:Biotop (Intercept) 5.405e-02 2.325e-01
 Biotop          (Intercept) 2.437e-10 1.561e-05
 Round           (Intercept) 4.511e-03 6.717e-02
Number of obs: 36, groups:  Location:Biotop, 6; Biotop, 2; Round, 2

Fixed effects:
            Estimate Std. Error z value Pr(>|z|)    
(Intercept)  5.51280    0.40310  13.676  < 2e-16 ***
Trap2        0.12104    0.10659   1.136  0.25614    
Trap3        0.34146    0.10557   3.235  0.00122 ** 
Humidity    -0.02459    0.00575  -4.276  1.9e-05 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Correlation of Fixed Effects:
         (Intr) Trap2  Trap3 
Trap2    -0.154              
Trap3    -0.103  0.516       
Humidity -0.946  0.020 -0.036
convergence code: 0
boundary (singular) fit: see ?isSingular 

table_Variables

实验设计

2个回答
  • 添加(1|round)作为防止伪复制的随机效果是正确的,关于这个主题的一篇好文章可以在这里找到。
    为确保您的模型假设一切正确,您可以比较模型摘要的 df,并检查它们是否考虑了您的伪重复,因此在模型中较低,并且具有随机效应。

  • 该术语(1|Biotope/Location)对于添加嵌套结构也是正确的,但是您应该将 Location 作为固定效果删除,关于此的一篇好文章来自@JoeKing Crossed vs nested random effects:它们有何不同以及它们如何在 lme4 中正确指定?
    写下来的另一种可能性是(1|Biotope) + (1|Biotope:Location)

所以你的最终模型应该是这样的:

Individuals ~ Trap + Temperature + Humidity + (1|Biotope/Location) + (1|round)

除了你的模型对我来说看起来不错之外,你可以考虑是否有任何额外的交互,可能在位置和温度之间,(1|Location:Temperature)并尝试将它们添加到模型中

托马斯的回答很好!我认为在最终确定建模方法之前,我们可能需要更多信息。例如,当前提出的模型忽略了响应变量是在不同日期收集的事实。

我会考虑这个建模练习的一种方式是这样的:

我们从 2 轮实验开始,因此Round可以被视为位于数据层次结构顶层的随机分组因子。(但是请注意,根据经验,一个随机分组因子应该至少有 5 个级别,而您只有 2 个级别。)

在每一轮中,您考虑多天。所以Day可以被认为是嵌套在Round中的随机分组因子(因为每一轮都是特定的日子。)听起来温度和湿度是日级预测变量?

在每一天中,您似乎都在考虑不同的位置,因此可以将位置视为随机分组因素,前提是您选择的位置旨在代表更大的一组位置。如果在实验轮中,位置从一天到下一天不同,则Location将嵌套在Day中。如果在同一实验轮次中跨天的位置之间存在一些重叠,则位置日期将是部分交叉的随机分组因子。如果所有日期的位置都相同,则位置日期将是完全交叉的随机分组因子。

我们对 Biotope 的了解不够 - 它是否在您的研究中包含您感兴趣的所有可能级别?或者您是否只选择了一些可能的水平以纳入您的研究?如果是后者,那么也许您可以将 Biotope 视为嵌套在 Day 内/部分交叉/完全交叉的随机分组因子,并将 Location 作为嵌套在 Biotope 内/部分交叉/完全交叉的随机分组因子。

对于陷阱也是如此,您必须确定是否将其视为嵌套在位置内/部分交叉/完全交叉位置,具体取决于陷阱是否从一个位置到下一个位置完全不同(嵌套),一些但并非所有陷阱都相同跨位置(部分交叉)或陷阱从一个位置到下一个位置(完全交叉)是相同的。

基本上,您必须从数据层次结构的顶层到底层,并决定在每个层级的建模选项方面什么最有意义。