在 nlme 中指定多个独立的随机效果
specifying multiple separate random effects in nlme
我正在分析一些鲸鱼旅游数据,并尝试在 nlme
包中构建线性混合效应模型,以查看我的任何解释变量是否会影响鲸鱼与游客之间的相遇时间。 (我也在lme4
中对运行这个模型持开放态度。)
我的变量是:
mins
:相遇时间(响应变量)
Id
:个体鲸鱼ID(随机效果)
Vessel
: vessel Id (随机效果)
Sex
: 动物性别
Length
: 动物的长度
Year
Month
(嵌套在 Year
内)。
所以我的随机变量是 Id
和 Vessel
我还有 Year
和 Month
作为嵌套随机效应。
我想出了以下几点:
form1 <- formula(Min ~ length + Sex+ Encounter)
model1 <- lme(form1,
random = list(Id = ~1,
Vessel = ~1,
Year=~1,
Month = ~1), data=wsdata, method="ML")
但是我所有的随机效果都嵌套在 Id
中。
有什么方法可以将 Id
和 Vessel
定义为单独的随机效应,将 Year
和 Month
定义为嵌套随机效应?
一般来说,在 lme4
中指定 crossed(我认为你所说的 "separate" 的意思)随机效应要容易得多,所以除非你需要时间或空间自相关或异方差模型(使用 nlme
更容易实现),我会继续使用
library(lme4)
fit <- lmer(mins ~ Length + Sex+ (1|Id) + (1|Vessel) +
(1|Year/Month), data=wsdata, REML=FALSE)
其他一些评论:
- 什么是
encounter
?它在您的公式中但不在您对数据集的描述中
- 相遇时间(相遇的持续时间?)似乎很可能会发生偏差,在这种情况下,您可能希望对它们进行对数转换。
我正在分析一些鲸鱼旅游数据,并尝试在 nlme
包中构建线性混合效应模型,以查看我的任何解释变量是否会影响鲸鱼与游客之间的相遇时间。 (我也在lme4
中对运行这个模型持开放态度。)
我的变量是:
mins
:相遇时间(响应变量)Id
:个体鲸鱼ID(随机效果)Vessel
: vessel Id (随机效果)Sex
: 动物性别Length
: 动物的长度Year
Month
(嵌套在Year
内)。
所以我的随机变量是 Id
和 Vessel
我还有 Year
和 Month
作为嵌套随机效应。
我想出了以下几点:
form1 <- formula(Min ~ length + Sex+ Encounter)
model1 <- lme(form1,
random = list(Id = ~1,
Vessel = ~1,
Year=~1,
Month = ~1), data=wsdata, method="ML")
但是我所有的随机效果都嵌套在 Id
中。
有什么方法可以将 Id
和 Vessel
定义为单独的随机效应,将 Year
和 Month
定义为嵌套随机效应?
一般来说,在 lme4
中指定 crossed(我认为你所说的 "separate" 的意思)随机效应要容易得多,所以除非你需要时间或空间自相关或异方差模型(使用 nlme
更容易实现),我会继续使用
library(lme4)
fit <- lmer(mins ~ Length + Sex+ (1|Id) + (1|Vessel) +
(1|Year/Month), data=wsdata, REML=FALSE)
其他一些评论:
- 什么是
encounter
?它在您的公式中但不在您对数据集的描述中 - 相遇时间(相遇的持续时间?)似乎很可能会发生偏差,在这种情况下,您可能希望对它们进行对数转换。