Welche Art von Residuen und Cooks Abstand werden für GLM verwendet?

11

Weiß jemand, wie die Formel für Cooks Distanz lautet? Die ursprüngliche Cook-Distanzformel verwendet studentisierte Residuen, aber warum verwendet R std. Pearson-Residuen bei der Berechnung des Entfernungsdiagramms des Cook für ein GLM. Ich weiß, dass studentisierte Residuen nicht für GLMs definiert sind, aber wie sieht die Formel zur Berechnung der Entfernung von Cook aus?

Nehmen Sie das folgende Beispiel an:

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

Wie lautet die Formel für Cooks Entfernung? Mit anderen Worten, wie lautet die Formel zur Berechnung der roten gestrichelten Linie? Und woher kommt diese Formel für standardisierte Pearson-Residuen?

Kochentfernung

MarkDollar
quelle

Antworten:

15

Wenn Sie sich den Code ansehen (einfacher Typ plot.lm, ohne Klammern oder edit(plot.lm)an der Eingabeaufforderung R), sehen Sie, dass Cooks Abstände in Zeile 44 mit der cooks.distance()Funktion definiert sind. Geben Sie stats:::cooks.distance.glman der Eingabeaufforderung R ein, um zu sehen, was es tut . Dort sehen Sie, dass es definiert ist als

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

Wo ressind Pearson-Residuen (wie von der influence()Funktion zurückgegeben), hatist die Hutmatrix , pist die Anzahl der Parameter im Modell und dispersionist die Dispersion, die für das aktuelle Modell berücksichtigt wird (für logistische und Poisson-Regression auf eins festgelegt, siehe help(glm)). Zusammenfassend wird es als Funktion der Hebelwirkung der Beobachtungen und ihrer standardisierten Residuen berechnet. (Vergleiche mit stats:::cooks.distance.lm.)

Für eine formellere Referenz können Sie Referenzen in der plot.lm()Funktion folgen , nämlich

Belsley, DA, Kuh, E. und Welsch, RE (1980). Regressionsdiagnose . New York: Wiley.

Darüber hinaus können wir über die zusätzlichen Informationen, die in den Grafiken angezeigt werden, weiter schauen und sehen, dass R verwendet

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

wo rspist als Std bezeichnet. Pearson resid. im Falle eines GLM, Std. ansonsten Residuen (Zeile 172); In beiden Fällen lautet die von R verwendete Formel jedoch (Zeilen 175 und 178).

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

wo hiiist der Hut Matrix durch die generische Funktion zurückgegeben lm.influence(). Dies ist die übliche Formel für std. Residuen:

rsj=rj1- -h^j

jj

Die nächsten Zeilen von R - Code eine glattere für Cook-Distanz (ziehen add.smooth=TRUEin plot.lm()der Standardeinstellung sehen getOption("add.smooth")) und Konturlinien (nicht sichtbar in Ihrem Plot) für kritisches standardisiertes Residuen (siehe cook.levels=Option).

chl
quelle