Какие остатки и расстояние Кука используются для GLM?

11

Кто-нибудь знает, какова формула расстояния Кука? В оригинальной формуле расстояния Кука используются нечеткие невязки, но почему R использует стандартное отклонение. Остатки Пирсона при расчете расстояния Кука для GLM. Я знаю, что для GLM не определены стедентифицированные невязки, но как выглядит формула для вычисления расстояния Кука?

Предположим следующий пример:

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

Какова формула для расстояния Кука? Другими словами, какова формула для вычисления красной пунктирной линии? И откуда эта формула для стандартизированных остатков Пирсона?

расстояние повара

MarkDollar
источник

Ответы:

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()функции, а именно

Белсли Д.А., Кух Э. и Уэлш Р.Э. (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. Остаток Пирсона. в случае GLM, Std. остатки в противном случае (строка 172); в обоих случаях, однако, формула, используемая R (строки 175 и 178)

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

где hii- шляпная матрица, возвращаемая обобщенной функцией lm.influence(). Это обычная формула для стандартного остатки:

рsJзнак равнорJ1-час^J

где J здесь обозначает Jковариата интересов. См., Например, Agresti Категориальный анализ данных , §4.5.5.

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

хл
источник