¿Qué tipo de residuos y la distancia de Cook se usan para GLM?

11

¿Alguien sabe cuál es la fórmula para la distancia de Cook? La fórmula original de distancia de Cook usa residuos estudiados, pero ¿por qué R usa std? Residuos de Pearson al calcular el diagrama de distancia de Cook para un GLM. Sé que los residuos estudiados no están definidos para GLM, pero ¿cómo se ve la fórmula para calcular la distancia de Cook?

Supongamos el siguiente ejemplo:

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

¿Cuál es la fórmula para la distancia de Cook? En otras palabras, ¿cuál es la fórmula para calcular la línea discontinua roja? ¿Y de dónde viene esta fórmula para los residuos estandarizados de Pearson?

distancia del cocinero

MarkDollar
fuente

Respuestas:

15

Si observa el código (tipo simple plot.lm, sin paréntesis, o edit(plot.lm)en el indicador R), verá que las distancias de Cook se definen en la línea 44, con la cooks.distance()función. Para ver lo que hace, escriba stats:::cooks.distance.glmen el indicador R. Ahí ves que se define como

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

donde resestán los residuales de Pearson (como los devuelve la influence()función), hates la matriz del sombrero , pes el número de parámetros en el modelo y dispersiones la dispersión considerada para el modelo actual (fijada en uno para la regresión logística y de Poisson, ver help(glm)). En suma, se calcula en función del apalancamiento de las observaciones y sus residuos estandarizados. (Comparar con stats:::cooks.distance.lm)

Para una referencia más formal, puede seguir las referencias en la plot.lm()función, a saber

Belsley, DA, Kuh, E. y Welsch, RE (1980). Diagnóstico de regresión . Nueva York: Wiley.

Además, sobre la información adicional que se muestra en los gráficos, podemos mirar más allá y ver que 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)   #  

donde rspestá etiquetado como Std. Pearson resid. en caso de un GLM, Std. residuos de lo contrario (línea 172); en ambos casos, sin embargo, la fórmula utilizada por R es (líneas 175 y 178)

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

donde hiies la matriz del sombrero devuelta por la función genérica lm.influence(). Esta es la fórmula habitual para el estándar. derechos residuales de autor:

rsj=rj1h^j

jj

Las siguientes líneas de código R dibujan una distancia más suave para la distancia de Cook ( add.smooth=TRUEen plot.lm()forma predeterminada, vea getOption("add.smooth")) y las líneas de contorno (no visibles en su diagrama) para los residuos críticos estandarizados (vea la cook.levels=opción).

chl
fuente