Jakie resztki i odległość Cooka są używane w GLM?

11

Czy ktoś wie, jaki jest wzór na odległość Cooka? Oryginalna formuła odległości Cooka wykorzystuje resztki studenckie, ale dlaczego R używa std. Resztki Pearsona podczas obliczania wykresu odległości Cooka dla GLM. Wiem, że resztki studenckie nie są zdefiniowane dla GLM, ale jak wygląda wzór do obliczania odległości Cooka?

Załóżmy następujący przykład:

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

Jaki jest wzór na odległość Cooka? Innymi słowy, jaki jest wzór na obliczenie czerwonej linii przerywanej? I skąd bierze się ta formuła dla znormalizowanych pozostałości Pearson?

odległość kucharza

MarkDollar
źródło

Odpowiedzi:

15

Jeśli spojrzysz na kod (typ prosty plot.lm, bez nawiasów lub edit(plot.lm)na monit R), zobaczysz, że odległości Cooka są zdefiniowane w linii 44, z cooks.distance()funkcją. Aby zobaczyć, co robi, wpisz stats:::cooks.distance.glmw wierszu R. Tam widzisz, że jest to zdefiniowane jako

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

gdzie ressą reszty Pearsona (zwracane przez influence()funkcję), hatto macierz kapelusza , pliczba parametrów w modelu i dispersionrozproszenie brane pod uwagę dla bieżącego modelu (ustalone na jeden dla regresji logistycznej i regresji Poissona, patrz help(glm)). Podsumowując, oblicza się go jako funkcję dźwigni obserwacji i ich standaryzowanych reszt. (Porównaj z stats:::cooks.distance.lm.)

Aby uzyskać bardziej formalne odwołanie, możesz śledzić odniesienia w plot.lm()funkcji, a mianowicie

Belsley, DA, Kuh, E. and Welsch, RE (1980). Diagnostyka regresji . Nowy Jork: Wiley.

Co więcej, o dodatkowych informacjach wyświetlanych w grafice, możemy spojrzeć dalej i zobaczyć, że R. używa

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)   #  

gdzie rspjest oznaczone jako Std. Resztka Pearson. w przypadku GLM, Std. w pozostałych przypadkach (linia 172); jednak w obu przypadkach wzór stosowany przez R jest następujący (wiersze 175 i 178)

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

gdzie hiijest macierz kapelusza zwrócona przez funkcję ogólną lm.influence(). Jest to zwykła formuła dla standardu. pozostałości:

rsj=rj1h^j

jj

Kolejne linie kodu R narysować gładsza dla odległości Cooka ( add.smooth=TRUEw plot.lm()domyślnie zobaczyć getOption("add.smooth")) i linie konturowe (niewidoczny na swojej działce) dla krytycznych standaryzowanych reszt (patrz cook.levels=opcja).

chl
źródło