Перевірка припущень lmer / lme змішаних моделей в R


25

Я здійснив повторний дизайн, в якому я протестував 30 чоловіків і 30 жінок у трьох різних завданнях. Я хочу зрозуміти, чим поведінка самців і жінок відрізняється і як це залежить від завдання. Для дослідження цього я використовував і пакет lmer, і lme4, проте я застряг у спробі перевірити припущення для будь-якого методу. Я запускаю код

lm.full <- lmer(behaviour ~ task*sex + (1|ID/task), REML=FALSE, data=dat)
lm.full2 <-lme(behaviour ~ task*sex, random = ~ 1|ID/task, method="ML", data=dat)

Я перевірив, чи взаємодія була найкращою моделлю, порівнюючи її з більш простою моделлю без взаємодії та запускаючи anova:

lm.base1 <- lmer(behaviour ~ task+sex+(1|ID/task), REML=FALSE, data=dat)
lm.base2 <- lme(behaviour ~ task+sex, random= ~1|ID/task), method="ML", data=dat)
anova(lm.base1, lm.full)
anova(lm.base2, lm.full2)

Q1: Чи нормально використовувати ці категоричні предиктори в лінійній змішаній моделі?
Q2: Я правильно розумію, що це добре, що змінну результату ("поведінку") не потрібно нормально розподіляти (по статі / завданням)?
Q3: Як я можу перевірити однорідність дисперсії? Для простої лінійної моделі я використовую plot(LM$fitted.values,rstandard(LM)). Чи plot(reside(lm.base1))достатньо використовувати ?
Q4: Для перевірки на нормальність використовується наступний код, добре?

hist((resid(lm.base1) - mean(resid(lm.base1))) / sd(resid(lm.base1)), freq = FALSE); curve(dnorm, add = TRUE)

Одне, що я помітив, це також те, що версія lme4, яку я використовував, була не останньою, і тому простий сюжет (myModel.lm) не працював, можливо, це корисно для інших читачів знати ..
crazjo

Відповіді:


26

Q1: Так - як і будь-яка модель регресії.

Q2: Подібно до загальних лінійних моделей, вашу змінну результатів не потрібно нормально розподіляти як універсальну змінну. Однак моделі LME припускають, що залишки моделі зазвичай розподіляються. Тож перетворення або додавання ваги до моделі було б способом подбати про це (і, звісно, ​​перевірити діагностичні схеми).

Q3: plot(myModel.lme)

Q4: qqnorm(myModel.lme, ~ranef(., level=2)). Цей код дозволить зробити графіки QQ для кожного рівня випадкових ефектів. Моделі LME припускають, що не тільки залишки в межах кластера зазвичай розподіляються, але і кожен рівень випадкових ефектів є також. Варіюйте levelвід 0, 1, до 2, щоб ви могли перевірити залишків щурів, завдань та предметів.

EDIT: Я також повинен додати, що хоча нормальність передбачається і що трансформація, ймовірно, допомагає зменшити проблеми з ненормальними помилками / випадковими ефектами, не ясно, що всі проблеми фактично вирішені або що упередженість не введена. Якщо ваші дані вимагають перетворення, то будьте обережні щодо оцінки випадкових ефектів. Ось документ, який вирішує це .


Дякую за вашу відповідь. Я хотів би поділитися моїм набором даних та сценарієм для аналізу, включаючи вихід, щоб побачити, чи справді те, що я зробив, є правильним. Чи можливо це в обміні стеками? Крім того, я думаю, що я виявив неправильний випадковий коефіцієнт (1 | щур / завдання), чи не повинен бути просто (1 | щур)? Я перевірив 60ратів (30 кожної статі) на три завдання.
crazjo

9
Нещодавно я спробував код для Q4, і з’явилася помилка щодо об’єкта типу 'S4', який не піддається встановленню. Чи підходив цей код, призначений для моделей, з пакетом lme? Що з lme4?
emudrak

Що стосується Q4, люди, які роблять ці ділянки, повинні мати на увазі, що N для кожного з вироблених ділянок буде значно меншим за загальну кількість, і тому ділянки будуть набагато більш змінними. Не сподівайтеся, що вони виглядатимуть так само стабільно, як і загальний.
Іван

14

Ви здаєтесь досить оманливим щодо припущень щодо багаторівневих моделей. Не існує припущення про однорідність дисперсії в даних, лише те, що залишки повинні бути приблизно нормально розподілені. І категоричні предиктори використовуються в регресії весь час (основна функція в R, яка виконує ANOVA, є лінійною командою регресії).

Докладніше про вивчення припущень див. У книзі Піньейро та Бейтс (стор. 174, розділ 4.3.1). Крім того, якщо ви плануєте використовувати lme4 (про яку не написана книга), ви можете скопіювати їхні сюжети, використовуючи сюжет із lmerмоделлю ( ?plot.merMod).

Швидко перевірити нормальність було б просто qqnorm(resid(myModel)).


Дякуємо за ваш коментар Чи пропонуєте ви використовувати lmer над методом lme4? І я прав, розуміючи змінну відповідей, не потрібно нормально розподіляти? Я буду правильно читати книгу Пінхеро та Бейтса.
crazjo

Також ви впевнені, що працює qqnorm (остаточний (myModel)) на змішаній моделі з кількома факторами?
crazjo

Новіша функція lmer має більше можливостей та більш високу продуктивність. Ви пробували qqnorm? Дотримуйтесь порад на початку книги про те, як її прочитати.
Джон

Сюжет, який я спочатку виглядав дивно, можливо, тому що я справді не мав новітньої версії Лмеру. Дякуємо, що зауважили це, зараз він працює як потрібно.
crazjo

12

Щодо Q2:

Відповідно до книги Пінейро та Бейтса, ви можете використовувати наступний підхід:

"Ця lmeфункція дозволяє моделювати гетероцесдастичність групи з помилками через weightsаргумент. Ця тема буде детально розглянута в § 5.2, але наразі достатньо знати, що varIdentструктура функції дисперсії дозволяє різні варіації для кожного рівня коефіцієнт і може бути використаний для підбору гетеросептичної моделі [...] "

Пінейро і Бейтс, с. 177

Якщо ви хочете перевірити наявність рівних відмінностей між sexвами, ви можете скористатися цим підходом:

plot( lm.base2, resid(., type = "p") ~ fitted(.) | sex,
  id = 0.05, adj = -0.3 )

Якщо відхилення відрізняються, ви можете оновити модель наступним чином:

lm.base2u <- update( lm.base2, weights = varIdent(form = ~ 1 | sex) )
summary(lm.base2u)

Крім того, ви можете ознайомитись з robustlmmпакетом, який також використовує зважувальний підхід. Докторська дисертація Коллера про цю концепцію доступна як відкритий доступ ("Надійна оцінка лінійних змішаних моделей"). У рефераті зазначено:

"Нова оцінка шкали, проектна адаптивна шкала проектування, розроблена з метою забезпечити надійну основу для наступних надійних випробувань. Це робиться шляхом вирівнювання природної гетерокедастичності залишків і коригування для надійного оцінювання рівняння для самої шкали. Ці корективи в адаптації дизайну мають вирішальне значення в невеликих налаштуваннях вибірки, де кількість спостережень може бути лише в 5 разів більше кількості оцінюваних параметрів або менше ".



У мене недостатньо балів для коментарів. Однак я бачу необхідність уточнити деякий аспект відповіді @John вище. Штат Пінейро та Бейтс на с. 174:

Припущення 1 - всередині групи помилки є незалежними та однаково нормально розподіленими, із середнім нулем та дисперсією σ2, і вони не залежать від випадкових ефектів.

Це твердження насправді не однозначно щодо однорідних дисперсій, і я недостатньо заглиблений у статистику, щоб знати всю математику, що стоїть за концепцією LME. Однак на с. 175, §4.3.1, розділ, що стосується Припущення 1, вони пишуть:

У цьому розділі ми зосередимось на методах оцінки припущення, що помилки в межах групи, як правило, розподіляються, центрируються на нулі та мають постійну дисперсію .

Також у наступних прикладах справді важливі « постійні відхилення ». Таким чином, можна міркувати, чи мають на увазі однорідні відхилення, коли вони пишуть " однаково нормально розподілені" на с. 174, не звертаючись до цього прямо.


-6

Q1: Так, чому б і ні?

Q2: Я думаю, що вимога полягає в тому, що помилки зазвичай розподіляються.

Q3: Можна перевірити, наприклад, тест Левена.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.