Как добавить базовые значения результата в момент времени 0 в качестве фиксированного эффекта в модели смешанного эффекта? - PullRequest
0 голосов
/ 04 сентября 2018

Моим исследованием было 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 не совпадают по длине со значениями веса результата. Это правильно? Как мне исправить это и использовать базовый уровень как фиксированный эффект?

Спасибо, что нашли время, чтобы прочитать это.

1 Ответ

0 голосов
/ 04 сентября 2018

Вы можете сделать следующее, чтобы определить weight0:

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

и затем установите модель.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...