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:
r sj= rj1 - h^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).