Я подгоняю следующие модели lmer
в R:
lmer(rt~deadline*cond+age+(1+deadline|task/pp), REML=FALSE) ##Model 1
lmer(rt~deadline+cond+age+(1+deadline|task/pp), REML=FALSE) ##Model 2
Где rt
- время реакции, deadline
имеет 2 уровня, короткий или длинный, cond
также имеет два уровня: легкий или сложный. В проведенном мной исследовании 30 испытуемых выполнили 4 задания. В каждом задании испытуемые выполняли по 50 попыток на каждом из четырех уровней (короткий/легкий, длинный/легкий, короткий/сложный, длинный/сложный). В моей модели выше у меня есть случайные пересечения для человека и задачи и случайные наклоны для человека и задачи в срок. Всего было проведено 800 испытаний. Регистрировались точность и время реакции. Меня интересует, влияют ли сложность (=cond
) и срочность (=deadline
) на время реакции (взаимодействие). Поскольку может иметь место эффект взаимодействия, я подобрала первую модель с взаимодействием и сравнила ее со второй моделью без взаимодействия.
Когда я запускаю первую модель, я получаю следующий вывод:
Итак, у меня проблема, поскольку и для
lm.rtfnew <- lmer(rt~deadline*cond+age+(1+deadline|task/pp), REML=FALSE)
fixed-effect model matrix is rank deficient so dropping 1 column / coefficient
summary(lm.rtfnew)
Linear mixed model fit by maximum likelihood ['lmerMod']
Formula: rt ~ deadline * cond + age + (1 + deadline | task/pp)
...
Estimate Std. Error t value
(Intercept) 5.874631 0.669971 8.77
deadlineshort -0.375643 0.171779 -2.19
condhard -4.685013 0.066538 -70.41
condeasy -4.658016 0.066538 -70.01
age 0.006791 0.018018 0.38
deadlineshort:condhard 0.007752 0.018960 0.41
...
fit warnings:
fixed-effect model matrix is rank deficient so dropping 1 column / coefficient
deadline
, и для cond
создаются два столбца, а затем эти два столбца показывают идеальную мультиколлинеарность? Затем R исправляет это, опуская один столбец для deadline
, но не для cond
(поскольку существует фиксированный эффект condhard
и condeasy
). Поэтому у меня два вопроса:
- Почему R не удаляет столбец
cond
? - Мне нужно исправить это вручную?
deadline
и один уровеньcond
представлены перехватом. - person Roland   schedule 06.06.2016summary(cond)
? - person Roland   schedule 06.06.2016""
. Вероятно, это должны быть значенияNA
. - person Roland   schedule 07.06.2016NA
значениями, но не похоже, что это так. По-видимому, они представляют собой факторный уровень, представляющий собой пустую строку символов. Либо исправьте это во время импорта данных, либо выполнитеcond[cond == ""] <- NA
. (Кстати, ваши данные должны располагаться вместе в data.frame, и вы должны использовать параметрdata
вlmer
.) - person Roland   schedule 07.06.2016