модель смешанного эффекта с повторными измерениями

Я пытаюсь разработать модель смешанных эффектов для набора данных с повторными измерениями.

Met измеряется в серии случайно выбранных дней на 24 образцах, подвергнутых 3 обработкам (Treat, с уровнями c, uc и ga).

Уровни Met меняются из-за разницы погодных условий в течение дней (Date). Таким образом, дата становится вторым случайным эффектом модели (наряду с отобранными элементами (ID)).

Меня больше всего интересует, оказывает ли Treat значительное влияние на Met в разные дни.

некоторые примерные данные:

# create example data frame 
ID     <-  factor(rep(c("a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x"), 6))
Treat  <-  factor(rep(c(rep("c",8), rep("uc",8), rep("ga",8)), 6))
Date   <-  factor(rep(c(rep("10/06/2007",24), rep("19/06/2007",24), rep("12/07/2007",24), rep("21/07/2007",24), rep("11/08/2007",24), rep("12/08/2007",24)), 1))
Met    <-  as.numeric(c(rnorm(8,5,2),   rnorm(8,7,2),   rnorm(8,9,2), 
                        rnorm(8,15,2),  rnorm(8,17,2),  rnorm(8,19,2),
                        rnorm(8,9,2),   rnorm(8,11,2),  rnorm(8,13,2),
                        rnorm(8,8,2),   rnorm(8,10,2),  rnorm(8,12,2),
                        rnorm(8,2,2),   rnorm(8,4,2),   rnorm(8,6,2),
                        rnorm(8,3,2),   rnorm(8,5,2),   rnorm(8,7,2)))
ww     <-  gl(1,1,144)

lys.data  <-  data.frame(ID, Treat, Date, Met, ww)
head(lys.data)

# set contrasts of data frame
lys.data$Treat   <-  factor(lys.data$Treat,     levels=c("c", "uc", "ga"))

Затем анализ:

library(nlme)
lme.001  <-  lme(Met ~ Treat, data = lys.data,
                 random=list(ww=pdBlocked(list(pdIdent(~Date-1),
                             pdIdent(~ID-1)))))
summary(lme.001)

Из результатов, которые я получаю, кажется, что я не делаю то, что, как я предполагаю, делаю, поскольку степени свободы кажутся неправильными (слишком высокими). Верно ли, что число степеней свободы в знаменателе увеличивается с числом повторений (дат) проведения эксперимента?

Кто может помочь мне здесь или указать мне правильное направление? Я ошибаюсь в том, как я представляю вложенность данных? (полагаю, что нет).


person thijs van den bergh    schedule 09.01.2013    source источник
comment
Этот вопрос может быть более уместным в stackoverflow, поскольку речь идет только о том, как использовать lme.   -  person Macro    schedule 09.01.2013
comment
Я думаю, что он достаточно особенный, чтобы никто в SO не имел ни малейшего представления, кроме, возможно, whuber, если он там :).   -  person StasK    schedule 09.01.2013
comment
Веб-сайт stats.stackexchange.com был лучшим местом для этого вопроса.   -  person Sven Hohenstein    schedule 10.01.2013
comment
отсюда и перенесся мой вопрос...   -  person thijs van den bergh    schedule 10.01.2013
comment
Можете ли вы объяснить, что привело вас к использованию этой случайной структуры вместо random=~Date|ID? Было ли что-то в остатках или графике lmList, что предполагало это конкретное выражение для случайных эффектов?   -  person bokov    schedule 29.07.2013


Ответы (1)


Правила, которые lme использует для вычисления степеней свободы знаменателя, описаны на с. 91 из Pinheiro and Bates (2000) — эта страница доступна в Google Книгах< /а>. (Эта ссылка также доступна на странице часто задаваемых вопросов GLMM.)

обновление: поскольку это больше не доступно в полезной форме в Google Книгах, вот текст критических абзацев:

Эти условные тесты для членов с фиксированными эффектами требуют степеней свободы знаменателя. В случае условных $F$-тестов также требуются степени свободы числителя, определяемые самим термом. Степени свободы знаменателя определяются уровнем группировки, на котором оценивается член. Термин называется внутренним по отношению к фактору, если его значение может изменяться в пределах заданного уровня группирующего фактора. Термин является внешним фактором группировки, если его значение не меняется в пределах уровней фактора группировки. Говорят, что терм оценивается на уровне $i$, если он является внутренним по отношению к $i-1$му группирующему фактору и внешним по отношению к $i$му группирующему фактору. Например, термин Machine в модели fm2Machine является внешним по отношению к Machine %in% Worker и внутренним по отношению к Worker, поэтому он оценивается на уровне 2 (Machine %in% Worker). Если терм является внутренним по отношению ко всем $Q$ группирующим факторам модели, он оценивается на уровне внутригрупповых ошибок, который мы обозначаем как $Q+1$-й уровень.

Перехват, который является параметром, соответствующим столбцу всех единиц в матрицах модели $X_i$, обрабатывается иначе, чем все другие параметры, когда он присутствует. В качестве параметра считается, что он оценивается на уровне 0, поскольку он является внешним по отношению ко всем группирующим факторам. Однако его степени свободы в знаменателе вычисляются так, как если бы он оценивался на уровне $Q+1$. Это связано с тем, что перехват — это единственный параметр, который объединяет информацию из всех наблюдений на уровне, даже если соответствующий столбец в $X_i$ не меняется с уровнем.

Пусть $m_i$ обозначает общее количество групп на уровне $i$ (с соглашением, что $m_0=1$, когда модель с фиксированными эффектами включает точку пересечения, и 0 в противном случае, и $m_{Q+1}=N$) и $p_i$ обозначают сумму степеней свободы, соответствующих слагаемым, оцененным на уровне $i$, знаменатель степени свободы $i$-го уровня определяется как

$$ denDF_i = m_i - (m_{i-1} + p_i), i = 1, \dots, Q $$

Это определение совпадает с классическим разложением степеней свободы в сбалансированных многоуровневых планах ANOVA и дает разумное приближение для более общих моделей смешанных эффектов.

Я не проверял ваш пример очень подробно, но я сильно подозреваю, что проблема в том, что у вас рандомизированный блочный дизайн, а не строго вложенный дизайн, так что ваши степени свободы выше, чем вы думаете. В общем, остаток/знаменатель df равен (количество блоков-1)*(число на блок-1), а не (как вы, возможно, ожидали) (количество блоков-1), типичное для вложенной схемы: см. здесь, например.

С другой стороны, возможно, что lme ошибся, если проект достаточно сложен — в этом случае вам, возможно, придется разработать его самостоятельно, или простого решения может не существовать. Опять же, обратитесь за советом к часто задаваемым вопросам по GLMM.

person Ben Bolker    schedule 16.01.2013