我尝试使用混合效应模型(lme4
包)分析R中的一些模拟纵向数据。
模拟数据:25名受试者必须在连续5个时间点执行2项任务。
#Simulate longitudinal data
N <- 25
t <- 5
x <- rep(1:t,N)
#task1
beta1 <- 4
e1 <- rnorm(N*t, mean = 0, sd = 1.5)
y1 <- 1 + x * beta1 + e1
#task2
beta2 <- 1.5
e2 <- rnorm(N*t, mean = 0, sd = 1)
y2 <- 1 + x * beta2 + e2
data1 <- data.frame(id=factor(rep(1:N, each=t)), day = x, y = y1, task=rep(c("task1"),length(y1)))
data2 <- data.frame(id=factor(rep(1:N, each=t)), day = x, y = y2, task=rep(c("task2"),length(y2)))
data <- rbind(data1, data2)
问题1 :如何分析主题如何学习每项任务?
library(lme4)
m1 <- lmer(y ~ day + (1 | id), data=data1)
summary(m1)
...
Fixed effects:
Estimate Std. Error df t value Pr(>|t|)
(Intercept) 1.2757 0.3561 123.0000 3.582 0.000489 ***
day 3.9299 0.1074 123.0000 36.603 < 2e-16 ***
使用ranef(m1)
我得到每个主题的随机截距,我认为这反映了每个主题在第1天的基线值。但我不明白我怎么能告诉个人如何学习任务,或者受试者在学习任务的方式上是否有所不同。
问题2:如何分析主题在task1和task2之间的学习方式是否有所不同。
答案 0 :(得分:2)
我扩展了您的示例以简要回答您的问题,但我建议您阅读Snijders & Bosker (2012)的第15章或Singer & Willet (2003)的书籍以获得更好的解释。在您的模型中,日被视为连续变量,因为您有面板数据(即每个人都在同一天进行测量),除了指示不同的测量时间之外,日没有意义,将日视为一个因素可能更好(即使用虚拟变量)。 但是,现在我将继续您的示例
你的第一个模型(我想你想要data1的数据读取)给出一个固定的线性斜率(即平均斜率,任务没有差异,个体之间没有差异)。固定截距是当天为0时的表现,没有任何意义,因此您可能需要考虑将日期效果集中在一起以获得更好的解释(或者确实使用假人)。随机效应给出了这个截距的个体偏差,在你的例子中估计方差为0.00,因此个体在起始位置上几乎没有差异。
m1 <- lmer(y ~ day + (1 | id), data=data)
summary(m1)
Random effects:
Groups Name Variance Std.Dev.
id (Intercept) 0.00 0.000
Residual 18.54 4.306
Number of obs: 250, groups: id, 25
我们可以通过添加与任务的交互来扩展此模型。意味着task1和task2的固定斜率不同,它回答了问题2我相信(你也可以使用update()
来更新你的模型)
m2 <- lmer(y ~ day*task + (1|id), data = data)
summary(m2)
此模型中的日期效果是参考类别(task1)的固定斜率,而交互是task1和task2的斜率之间的差异。任务的固定效果是截距的差异。 模型拟合可以通过偏差测试进行评估,阅读Snijders&amp; Boskers(2012)对ML和REML估计的解释。
anova(m1,m2)
要为个体的成长添加随机效果,我们可以再次更新模型,这可以回答问题1
m3 <- lmer(y ~ day*task + (day|id), data = data)
summary(m3)
ranef(m3)
随机效应表明斜率和截距的个体偏差。随机效应分布的摘要包含在模型摘要中(与m1相同)。 最后,我认为您可以在日常任务交互中添加随机效果,以评估个人在任务1和任务2上的绩效增长是否存在差异。但这在很大程度上取决于您的数据和以前型号的性能。
m4 <- lmer(y ~ day*task + (day*task|id), data = data)
summary(m4)
ranef(m4)
希望这会有所帮助。我推荐的书应该是。两者都提供了很好的例子和理论解释(不幸的是没有R例子)。如果您决定固定场合模型(由假人表示的日期效果),nlme
包提供了控制随机效应的协方差结构的出色选项。 Pinheiro & Bates (2000)提供了包的良好文档。