Che tipo di residui e la distanza di Cook vengono utilizzati per GLM?


11

Qualcuno sa qual è la formula per la distanza di Cook? La formula della distanza originale di Cook utilizza i residui studentizzati, ma perché R usa std. Residui di Pearson durante il calcolo del diagramma della distanza di Cook per un GLM. So che i residui studentizzati non sono definiti per i GLM, ma come appare la formula per calcolare la distanza di Cook?

Supponiamo il seguente esempio:

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

Qual è la formula per la distanza di Cook? In altre parole, qual è la formula per calcolare la linea tratteggiata rossa? E da dove proviene questa formula per i residui Pearson standardizzati?

distanza del cuoco

Risposte:


15

Se dai un'occhiata al codice (tipo semplice plot.lm, senza parentesi o edit(plot.lm)al prompt R), vedrai che le distanze di Cook sono definite nella riga 44, con la cooks.distance()funzione. Per vedere cosa fa, digitare stats:::cooks.distance.glmal prompt R. Lì vedi che è definito come

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

dove ressono i residui di Pearson (come restituito dalla influence()funzione), hatè la matrice del cappello , pè il numero di parametri nel modello ed dispersionè la dispersione considerata per il modello corrente (fissata su uno per la regressione logistica e di Poisson, vedi help(glm)). In breve, viene calcolato in funzione della leva finanziaria delle osservazioni e dei loro residui standardizzati. (Confronta con stats:::cooks.distance.lm.)

Per un riferimento più formale è possibile seguire i riferimenti nella plot.lm()funzione, vale a dire

Belsley, DA, Kuh, E. e Welsch, RE (1980). Diagnostica di regressione . New York: Wiley.

Inoltre, riguardo alle informazioni aggiuntive visualizzate nella grafica, possiamo guardare oltre e vedere che R usa

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

dove rspè etichettato come Std. Pearson resid. in caso di GLM, Std. residui altrimenti (linea 172); in entrambi i casi, tuttavia, la formula utilizzata da R è (righe 175 e 178)

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

dove si hiitrova la matrice cappello restituita dalla funzione generica lm.influence(). Questa è la solita formula per std. residui:

rSj=rj1-h^j

jj

Le righe successive del codice R disegnano più uniformemente la distanza di Cook ( add.smooth=TRUEin plot.lm()per impostazione predefinita, vedi getOption("add.smooth")) e le curve di livello (non visibili nel diagramma) per i residui standardizzati critici (vedi l' cook.levels=opzione).

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.