Які залишки та відстань Кука використовуються для GLM?


11

Хтось знає, яка формула відстані Кука? Оригінальна формула відстані Кука використовує студизовані залишки, але чому R використовує std. Залишки Пірсона при обчисленні графіку відстані Кука для ГЛМ. Я знаю, що студизовані залишки не визначені для ГММ, але як виглядає формула для обчислення відстані Кука?

Припустимо наступний приклад:

numberofdrugs <- rcauchy(84, 10)
healthvalue <- rpois(84,75)
test <- glm(healthvalue ~ numberofdrugs, family=poisson)
plot(test, which=5) 

Яка формула відстані Кука? Іншими словами, яка формула для обчислення червоної пунктирної лінії? І звідки береться ця формула для стандартизованих залишків Пірсона?

відстань кухаря

Відповіді:


15

Якщо ви подивитеся на код (простий тип plot.lm, без дужок або edit(plot.lm)в запит R), ви побачите, що відстані Кука визначаються рядком 44, з cooks.distance()функцією. Щоб побачити, що це робить, введіть stats:::cooks.distance.glmу рядку R. Там ви бачите, що це визначено як

(res/(1 - hat))^2 * hat/(dispersion * p)

де resзнаходяться залишки Пірсона (повернуті influence()функцією), hatє матриця капелюхів , pчисельність параметрів у моделі та dispersionчи розглядається дисперсія для поточної моделі (фіксованої одиниці для логістичної та пуассонової регресії, див. help(glm)). Підсумовуючи, вона обчислюється як функція важелів спостережень та їх стандартизованих залишків. (Порівняйте з stats:::cooks.distance.lm.)

Для отримання більш офіційної довідки ви можете слідувати посиланнями у plot.lm()функції, а саме

Belsley, DA, Kuh, E. and Welsch, RE (1980). Регресійна діагностика . Нью-Йорк: Вілі.

Більше того, про додаткову інформацію, відображену в графіці, ми можемо подивитися далі і побачити, що R використовує

plot(xx, rsp, ...                    # line 230
panel(xx, rsp, ...)                  # line 233
cl.h <- sqrt(crit * p * (1 - hh)/hh) # line 243
lines(hh, cl.h, lty = 2, col = 2)    #
lines(hh, -cl.h, lty = 2, col = 2)   #  

де rspпозначено як Std. Залишок Пірсона. у випадку ГЛМ, Std. залишки в іншому випадку (рядок 172); в обох випадках, однак, формула, яка використовується R, є (рядки 175 та 178)

residuals(x, "pearson") / s * sqrt(1 - hii)

де hiiматриця капелюхів, повернена загальною функцією lm.influence(). Це звичайна формула для std. залишки:

rsj=rj1h^j

де тут позначає ю коваріант інтересу. Див., Наприклад , категоричний аналіз даних Agresti, §4.5.5.jj

Наступні рядки коди R малювати гладкі , відстані Кука ( add.smooth=TRUEв plot.lm()за замовчуванням, см getOption("add.smooth")) і контурні лінії (невидимі в Вашій ділянці) для критичних стандартизованих залишків (див cook.levels=варіант).

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