Я хочу запустить линейную смешанную модель для зависимой переменной DV
, которая собирается под двумя разными Condition
в трех разных Timepoint
. Данные структурированы следующим образом:
## dput(head(RawData,5))
structure(list(Participant = structure(c(2L, 2L, 2L, 2L, 4L),
.Label = c("Jessie", "James", "Gus", "Hudson", "Flossy",
"Bobby", "Thomas", "Alfie", "Charles", "Will", "Mat", "Paul", "Tim",
"John", "Toby", "Blair"), class = "factor"),
xVarCondition = c(1, 1, 0, 0, 1),
Measure = structure(c(1L, 2L, 3L, 4L, 1L),
.Label = c("1", "2", "3", "4", "5", "6", "7", "8",
"9", "10", "11", "12"), class = "factor"),
Sample = structure(c(1L, 2L, 1L, 2L, 1L),
.Label = c("1", "2"), class = "factor"),
Condition = structure(c(2L, 2L, 1L, 1L, 2L),
.Label = c("AM", "PM"), class = "factor"),
Timepoint = structure(c(2L, 2L, 2L, 2L, 1L),
.Label = c("Baseline", "Mid", "Post"), class = "factor"),
DV = c(83.6381348645853, 86.9813802115179, 69.2691666620429,
71.3949807856125, 87.8931998204771)),
.Names = c("Participant", "xVarCondition", "Measure",
"Sample", "Condition", "Timepoint", "DV"),
row.names = c(NA, 5L), class = "data.frame")
Каждый Participant
выполняет два испытания на Condition
в течение трех Timepoint
, как показано Measure
; однако отсутствуют данные, поэтому не обязательно 12 уровней на участника. Столбец xVarCondition
— это просто фиктивная переменная, которая включает 1 для каждой записи AM в Condition. Столбец Sample
относится к 2 испытаниям для каждого Condition
в каждом Timepoint
.
Я пользователь R, но статистик — пользователь SAS, который считает, что код для модели должен быть таким:
proc mixed data=RawData covtest cl alpha=α
class Participant Condition Timepoint Measure Sample;
model &dep=Condition Timepoint/s ddfm=sat outp=pred residual noint;
random int xVarCondition xVarCondition*TimePoint*Sample
TimePoint/subject=Participant s;
Приведенный выше код SAS дает разумные ответы и работает отлично. Мы считаем, что результирующий синтаксис lme4
для приведенной выше модели будет следующим:
TestModel = lmer(DV ~ Condition + Timepoint +
(1 | Participant/Timepoint) +
(0 + xVarCondition | Participant) +
(1 | Participant:xVarCondition:Measure), data = RawData)
Однако при запуске этой модели я получаю следующую ошибку:
Error: number of levels of each grouping factor must be < number of observations
Правильно ли указаны случайные эффекты?
Condition
иTimepoint
, являются факторами. Вы уверены, что смешанная линейная модель — лучший подход в этом случае? Кроме того, я не понимаю разницы междуxVarCondition
иCondition
. - person Adam Quek   schedule 16.06.2016