r语言 - 如何在混合效应模型中将时间 = 0 时结果的基线值添加为固定效应?



我的研究是一项为期12周的研究,涉及两种饮食(饮食(。以时间(时间(= 0,6和12周为间隔进行结果测量,例如体重,腰围等。(代码(代表主题。

我尝试使用以下代码来创建一个名为 weight0 的新变量,以仅在时间 = 0 时选择结果值。

weight0 <- dat2$weight[dat2$time==0] 

我创建了以下模型。

p1 <- lme4::lmer(weight ~ diet * time + weight0 + weight0 * time + (time | code), REML = FALSE, data = dat2)
Error in model.frame.default(data = dat2, drop.unused.levels = TRUE, formula = weight ~  : 
variable lengths differ (found for 'weight0')

我想我明白发生了什么。权重 0 的值与结果权重值的长度不同。这是对的吗?如何纠正此问题并使用基线作为固定效果?

感谢您抽出宝贵时间阅读本文。

您可以执行以下操作来定义weight0

dat2 <- dat2[order(dat2$code, dat2$time), ]
dat2$weight0 <- with(dat2, ave(weight, code, FUN = function (x) x[1]))

然后拟合模型。

相关内容

  • 没有找到相关文章

最新更新