R代码,如果我的随机效果嵌套在另一个随机效果下

时间:2016-11-03 15:02:28

标签: r linear-regression hierarchical-data lme4 mixed-models

我正在尝试为R中的研究做混合线性模型。我想知道我的代码是否正确。 我的设计 - 我有5个站点,每个站点有2个子站点,每个站点有2个永久方块。 所以我有5个站点,10个子站点和20个样方。我测量了所有样方的菌落大小(珊瑚)。 我的问题是网站之间的大小结构是否不同? 在我的数据中,quadrats嵌套在子网站中,子网站嵌套在网站中。 我将使用site作为我的固定因子,subsites和quadrats作为我的随机效果。 我可以想到两种可能的方法:

library(lme4)

选项1 lmer(size ~ site + (1|subsite) + (1|quadrat)

选项2 lmer(size ~ site + (1|site:subsite) + (1|subsite:quadrant)

哪一个使用正确?

谢谢

1 个答案:

答案 0 :(得分:0)

这取决于您的子网站和样方的编码方式。我们考虑两种方案。

显式嵌套:这意味着网站中的子网站和子网站中的样方不具有唯一的名称,例如

site subsite quadrat
A    a       1
A    a       2
A    b       1
A    b       2
B    a       1
B    a       2
... etc.

在这种情况下,你必须使用交互/嵌套语法让R知道站点A中的quadrat 1,子站点a与标记为" 1&的所有其他样方没有任何共同之处#34; ...

size ~ site + (1|site:subsite) + (1|site:subsite:quadrat)

size ~ site + (1|site:(subsite/quadrat)) 可能有效,但我还没有对其进行测试)

隐式嵌套:在这种情况下,所有内容都是唯一命名的。

site subsite quadrat
A    Aa      Aa1
A    Aa      Aa2
A    Ab      Ab1
A    Ab      Ab2
B    Ba      Ba1
B    Ba      Ba2
... etc.

在这种情况下,您可以使用 上面的语法(R自动删除冗余级别)或

size ~ site + (1|subsite) + (1|quadrat)

你应该得到相同的结果。 (你总是可以通过实验测试!)

其他几点:

  • 一般来说我推荐使用唯一标签/隐式嵌套(显式嵌套对于人类在字段注释上收集数据可能更方便,但您应该在数据清理过程的早期转换为隐式嵌套),因为它会略微降低出错的几率
  • 我总是建议在data
  • 中使用lme4参数
  • 如果您不关心量化站内变异,并且您的设计是平衡的,并且您的数据是正常的(即您使用lmer而不是glmer你可以极大地简化你的生活,只需简单地汇总到每个站点的平均值并运行单因素方差分析(参见Murtaugh 2007, Ecology ," Simplicity and生态数据分析的复杂性")。