Регресійне моделювання з неоднаковою дисперсією


22

Я хотів би помістити лінійну модель (lm), де дисперсія залишків явно залежить від пояснювальної змінної.

Я знаю, як це зробити, використовуючи glm з сімейством Gamma для моделювання дисперсії, а потім вводять його обернення у вагах у функції lm (приклад: http://nitro.biosci.arizona.edu/r/chapter31 .pdf )

Мені було цікаво:

  • Це єдиний прийом?
  • Які ще підходи є актуальними?
  • Які R-пакети / функції, що стосуються цього типу моделювання? (інше тоді glm, lm)

4
Де вони використовуються glm()потім lm()у розділі, на який ви посилаєтесь. Мені здається, glm()це все, що там потрібно і використовується, але я, можливо, щось пропустив. Ви можете спробувати узагальнені найменші квадрати ( gls()у nlme ), які дозволяють оцінити ваги для контролю за типом гетероскедастичності, який ти згадуєш; перегляньте ?varFuncта переходьте за посиланнями звідти. IIRC varFixed()зробить те, що ви хочете.
Відновіть Моніку - Г. Сімпсон

У "proc змішаному", "предмет = варіант" створює блок-діагональну структуру в дисперсійно-коваріаційній матриці залишків. Ви розглядали, таким чином, загальну лінійну змішану модель для зміни гіпотези гомосептичності?
окрам

Дякую, Гевін, я трохи роздивився ці функції. Два питання: 1) Чи рекомендуєте ви будь-які навчальні посібники? (Я підозрюю, що книга МАСС - це мій початок, але мені було цікаво, чи думаєте ви про це). 2) Оскільки модель, до якої я підходить, - це звичайний OLS, чим відрізнятиметься оцінка при використанні функції gls? (Якщо я пам'ятаю правильно - не дуже багато, оскільки це повинно працювати над деяким ітераційним наближенням першого ступеня, але я в цьому зовсім не впевнений). Ocram - спасибі, але я не використовую SAS.
Тал Галілі

Тут у Розділі 2 пояснено, як це зробити в STATA для квазіпоассонової регресії: stata.com/meeting/fnasug08/gutierrez.pdf . Якби хтось міг запропонувати спосіб перекодувати це в R, я був би дуже вдячний.
a11msp

Відповіді:


17

Таблетки проти "ефекту мегафона" включають (серед інших):

  1. Використовуйте увійти або квадратний корінь перетворення . Це не точно, але іноді воно приручає розширення.Y
  2. Використовуйте зважений найменший квадрат регресії . При такому підході кожному спостереженню надається власний коефіцієнт дисперсії. Ця відповідь показує, як використовувати WLSR в R (наприклад, якщо дисперсія залишків пропорційна значенню, ви можете надати як зважування обернену пристосовану величину в незваженій моделі).
  3. Використовуйте надійну регресію. Функціонал rlm()в MASSпакеті R робить M-оцінку, яка повинна бути стійкою до нерівності дисперсій.

Липень 2017 року редагувати: Здається, що узагальнені найменші квадрати, як пропонується у відповіді Грега Сноу, є одним із найкращих варіантів.


2
Я спирався на цю відповідь на запитання щодо переповнення стека .
Пітер Елліс

1
Можливо, варто також вказати на узагальнений варіант з найменшими квадратами, використовуючи gls з опцією ваг, встановленою на varFixed () - мені це здасться одним із найелегантніших варіантів ...
Том Венселлер,

@TomWenseleers Я згоден. Зауважте, що це відповідь Грега Сноу.
gui11aume

9

За допомогою пакету gamlss можна моделювати розподіл помилок у відповіді як лінійну, нелінійну або плавну функцію пояснювальних змінних. Це здається досить потужним підходом (я дізнався багато про всі можливості, які можуть виникнути в процесі вибору моделі), і все добре пояснено в кількох публікаціях (включаючи книги), на які посилається посилання вище.


8

glsФункція в nlmeпакеті для R можна оцінити регресії і відносини з дисперсією в той же час. Дивіться weightsаргумент та 2-й приклад на довідковій сторінці.

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