Невідповідність регресії проти ANOVA (aov vs lm в R)


21

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

Ось приклад того, як виглядають мої дані та які аналізи я виконую, але без тих самих p-значень чи ефектів, які мають значення в результатах (мої фактичні результати наведені вище):

group<-c(1,1,1,0,0,0)
moderator<-c(1,2,3,4,5,6)
score<-c(6,3,8,5,7,4)

summary(lm(score~group*moderator))
summary(aov(score~group*moderator))

резюме (lm ()) дає вам коефіцієнти для вказаних вами контрастів, які є контрастами на лікування за відсутності тут специфікації. Тоді як резюме (aov ()) дає вам таблицю anova. Якщо ви хочете, щоб анова для моделі lm вам потрібна anova (lm ())
— Метт Альбрехт

groupчисельний вектор, це цілеспрямовано? Зазвичай фактори групування повинні мати клас factor, таким чином, щоб перетворення на контрасти можна було обробляти автоматично такими функціями lm(). Це стане очевидним, коли у вас буде більше двох груп або використовувати кодування, відмінне від 0/1, для вашої groupзмінної.
— каракал

Відповіді:


17

summaryФункція викликає різні методи в залежності від класу об'єкта. Різниця полягає не в aovпорівнянні lm, а в інформації, представленій про моделі. Наприклад, якщо ви використовували anova(mod1)та anova(mod2)замість цього, ви повинні отримати однакові результати.

Як стверджує @Glen, головним є те, чи повідомляються тести на основі розмірів квадратів 1 або 3 типу. Вони відрізнятимуться, коли кореляція між вашими пояснювальними змінними не буде точно 0. Коли вони співвідносяться, деякі СС є унікальними для одного прогноктора, а інші - для інших, але деякі СС можуть бути віднесені до одного або обох. ( Ви можете візуалізувати це, уявивши символ MasterCard- в центрі є невелика область перекриття.) У цій ситуації немає однозначної відповіді, і, на жаль, це норма для неекспериментальних даних. Один із підходів полягає в тому, щоб аналітик використав своє судження і призначив SS, що перекривається, одній із змінних. Ця змінна спочатку переходить у модель. Інша змінна переходить у модель секунди і отримує SS, схожий на печиво з укусом, вийнятим з нього. Цей ефект може бути перевірений тим, що іноді називають R2змінити або змінити F. У цьому підході використовується тип 1 SS. Крім того, ви можете зробити це двічі, коли кожен буде першим, і повідомити про тест F зміни обох прогнозів. Таким чином, жодна змінна не отримує SS через перекриття. У цьому підході використовується тип 3 SS. (Я також повинен сказати вам, що останній підхід дотримується низької уваги.)

Після пропозиції @BrettMagill в коментарі нижче, я можу спробувати зробити це трохи зрозумілішим. (Зауважте, що в моєму прикладі я використовую лише 2 прогнози і не взаємодію, але цю ідею можна збільшити, щоб включити все, що вам подобається.)

Тип 1: SS (A) та SS (B | A)

Тип 3: SS (A | B) і SS (B | A)


1
Це приємний опис проблеми. Ви можете трохи уточнити текст за допомогою цього: Тип I: SS_A = SS (A) SS_B = SS (B | A) і SS_AB = SS (AB | B, A) Тип III: SS_A = SS (A | B, AB ) і SS_B = SS (B | A, AB) і SS_AB = SS (AB | A, B)
— Бретт

1
Дуже дякую за допомогу. Зараз я розумію, що відбувається з точки зору того, чим ці моделі відрізняються, але мені все ще не зрозуміло, коли було б доцільно використовувати або модель anova, або регресію. Мій радник радить anova, але мене завжди вчили застосовувати регресію, і я не впевнений, який варіант краще використовувати, коли результати розходяться. Чи є у вас приклади чи ресурс, щоб порадити, коли це було б доречно? Ще раз дякую за вашу допомогу.
— Ребекка

1
Вибачте, я не дуже дотримуюся. Моя думка, що моделі насправді не відрізняються. ANOVA - це регресія з усіма якісними прогнозами. Якщо у вас є модель регресії з безперервними та якісними предикторами, і ви вводите спочатку безперервний предиктор, то якісні предиктори (але без терміну взаємодії) - це ANCOVA. Будь-який підхід чудовий, оскільки "поза кадром" вони однакові. Я зазвичай кодую це як регресію, але це питання стилю. ОТОХ, якщо ваш радник хоче, щоб він керувався стилем ANOVA, тоді йдіть цим маршрутом, оскільки різниці немає.
— gung - Відновіть Моніку

2
Кілька речей: (3 вгору) взаємодія не означає, що ваші незалежні змінні співвідносяться, це просто різні речі; (2 вгору) якщо модель 3 значно краща за модель 2, то так, це говорить про те, що взаємодія є суттєвою (оскільки взаємодія є єдиним, що між ними відрізняється); (1 вгору) ви хочете уникати просто лову значних наслідків, якщо ви не думаєте про своє дослідження як про пілот, який ви будете використовувати для планування подальшого підтверджуючого дослідження (в цьому випадку я думаю, що ви все в порядку); Я збираюся, ви провели це дослідження, щоб переглянути всі три, і таким чином перейдіть до моделі 3.
— gung - Відновіть Моніку

2
Крім того, взаємодія означає, що не слід інтерпретувати основні наслідки, тому подання лише моделі 1 може бути небезпечно оманливою. Якщо ви хочете отримати більше інформації про типи СС, я написав тут досить вичерпну відповідь: stats.stackexchange.com/questions/20452/… Крім того, вам слід прийняти одну з відповідей, в якийсь момент, натиснувши прапорець поруч один з них.
— gung - Відновіть Моніку

10

Результати виходу aov дають вам ймовірності на основі суми квадратів типу 1. Ось чому результат взаємодії однаковий, а основні ефекти відрізняються.

Якщо ви використовуєте ймовірності на основі суми квадратів типу 3, вони відповідатимуть результатам лінійної регресії.

library(car)
Anova(aov(score~group*moderator),type=3)

5
Лінійні моделі та ANOVA будуть еквівалентними, коли моделі тестують однакові гіпотези та коли параметризація факторів рівнозначна. Так звані суми «типу I» та «типу III» - це просто тести різних гіпотез (наслідки послідовних сум квадратів проти граничних сум квадратів). ANOVA, як правило, приховує деякі рішення, що реалізуються у багатьох пакетах - факт, який змушує мене вважати, що фактично встановлення та тестування гіпотез, що цікавлять, шляхом параметризації факторів та порівняння моделі в GLM - це чудовий підхід.
— Бретт

+1, я думаю, ти маєш помилку. lm використовує тип 1 SS, а aov використовує тип 3 SS.
— gung - Відновити Моніку

2
Тип III (граничні) Суми квадратів використовуються за замовчуванням у lm. AOV використовував тип I (послідовний) за замовчуванням. Результати LM інваріантні для порядку, тоді як результати aov залежать від порядку факторів.
— Бретт

Я вважав, що lm і aov за замовчуванням використовували тип I, отже, використання капіталу A Anova () для типів II і III.
— Метт Альбрехт

6
Загалом, Anova(..., type=3)буде НЕ дати вам правильний тип III SS, якщо ви також перейти від лікування контрастів ( по замовчуванням в R) для ефекту кодування для неупорядкованих факторів ( options(contrasts=c("contr.sum", "contr.poly"))) або деяких інших кодів контрастною суми до нуля (наприклад, Гельмерта). Це стане очевидним після того, як ви маєте незбалансований розмір комірок та більше двох груп, а також згадується на сторінці довідки для Anova().
— каракал

-2

Основна відмінність між лінійною регресією та ANOVA полягає в тому, що в ANOVA змінні предиктора є дискретними (тобто вони мають різний рівень). Тоді як в лінійній регресії змінні предиктора є безперервними.


3
Це взагалі не відповідає дійсності.
— Майкл Р. Черник

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