LMM со случайными эффектами, связанными с уровнями скрещенных / вложенных группирующих факторов - PullRequest
0 голосов
/ 24 января 2019

У меня возникли проблемы с пониманием того, что этот эксперимент пересек или вложенные факторы группировки, которые я хочу связать со случайными эффектами в LMM. Я также хотел бы понять, правильный ли синтаксис моделей.

Как бы вы поступили так: эксперимент настроен на три block репликации. В них у меня есть три treatment участка (это участки почвы, всего 9). на каждом участке у меня есть шесть точек (observations - это мой профиль почвы), где я собираю образцы почвы. Следовательно, в пределах observations у меня есть три почвы horizons (это три слоя почвы, которые происходят из одной и той же точки - observation, но на разных глубинах).

  1. Прежде всего, я хочу измерить разницу между treatments в пределах одной почвы horizon.

one_hor - это уменьшенный фрейм данных, который содержит mydependvariable только для одного горизонта: вот кадр данных:

dput(one_hor)
structure(list(myanagem = structure(c(1L, 2L, 3L, 1L, 2L, 3L, 
1L, 2L, 3L), .Label = c("CH", "CHF", "WTH"), class = "factor"), 
    block = structure(c(1L, 1L, 1L, 2L, 2L, 2L, 3L, 3L, 3L), .Label = c("1", 
    "2", "3"), class = "factor"), hor = structure(c(3L, 3L, 3L, 
    3L, 3L, 3L, 3L, 3L, 3L), .Label = c("F", "H", "L"), class = "factor"), 
    mydependvariable = c(47.8441491508198, 42.9776016786983, 
    44.2640639539627, 41.5914174334551, 51.6427380254114, 37.5819989709135, 
    49.8987347045142, 41.3728234591754, 52.9627860231326)), row.names = c(NA, 
-9L), class = "data.frame")

Для этого я подумал о следующей модели:

model_lmer_C_L <- lmer(log(mydependvariable) ~  managem + (1|block),
       data= mix_L, REML = TRUE)
  1. Я также хотел бы измерить различия между почвой horizons в пределах одного и того же treatment (я не знаю, будет ли это соответствовать предположению о независимости). Для этого я использовал фрейм данных all_hors, который имеет значения для всех горизонтов вместе:
dput (all_hors)
structure(list(myanagem = structure(c(1L, 2L, 3L, 1L, 2L, 3L, 
1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 
2L, 3L, 1L, 2L, 3L), .Label = c("CH", "CHF", "WTH"), class = "factor"), 
    block = structure(c(1L, 1L, 1L, 2L, 2L, 2L, 3L, 3L, 3L, 1L, 
    1L, 1L, 2L, 2L, 2L, 3L, 3L, 3L, 1L, 1L, 1L, 2L, 2L, 2L, 3L, 
    3L, 3L), .Label = c("1", "2", "3"), class = "factor"), hor = structure(c(3L, 
    3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 
    3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L), class = "factor", .Label = c("F", 
    "H", "L")), mydependvariable = c(44.6968250852355, 53.1828782803165, 
    47.4575645657112, 51.5093038256725, 48.1827652837951, 39.9179043777532, 
    50.0989615281406, 41.7977368903542, 43.0292001919997, 50.4325507695009, 
    49.7646553556968, 53.9195107181261, 45.2323395692346, 52.0066022471402, 
    54.3295196086515, 41.7231684901803, 51.211617259873, 48.1669047180151, 
    56.9066150534588, 42.1880849195177, 67.6490806984713, 62.2504530592383, 
    43.5937599989346, 39.4377478805407, 69.1207400428221, 36.5530072488604, 
    42.3732207709937)), row.names = c(NA, -27L), class = "data.frame")

Для этого я подумал о следующей модели:

model_lmer_C <- lmer(log(mydependvariable) ~  treatment * horizon + (1|block/treatment), data = all_hors)

Считаете ли вы, что синтаксис для моделей правильный?

Насколько я понимаю, что "обработки" и "блоки" пересекаются, это правильно?

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

...