35 votos

¿Cómo se calculan los errores estándar de los valores ajustados de una regresión logística?

Cuando se predice un valor ajustado a partir de un modelo de regresión logística, ¿cómo se calculan los errores estándar? Me refiero a los valores ajustados no para los coeficientes (que implica la matriz de información de Fishers).

Sólo descubrí cómo obtener los números con R (por ejemplo, aquí en r-help, o aquí en Stack Overflow), pero no encuentro la fórmula.

pred <- predict(y.glm, newdata= something, se.fit=TRUE)

Si pudiera proporcionar la fuente en línea (preferiblemente en un sitio web de la universidad), sería fantástico.

43voto

jamesh Puntos 9849

La predicción es sólo una combinación lineal de los coeficientes estimados. Los coeficientes son asintóticamente normales, por lo que una combinación lineal de esos coeficientes será también asintóticamente normal. Así que si podemos obtener la matriz de covarianza para las estimaciones de los parámetros podemos obtener el error estándar para una combinación lineal de esas estimaciones fácilmente. Si denoto la matriz de covarianza como $\Sigma$ y escribir los coeficientes de mi combinación lineal en un vector como $C$ entonces el error estándar es simplemente $\sqrt{C' \Sigma C}$

# Making fake data and fitting the model and getting a prediction
set.seed(500)
dat <- data.frame(x = runif(20), y = rbinom(20, 1, .5))
o <- glm(y ~ x, data = dat)
pred <- predict(o, newdata = data.frame(x=1.5), se.fit = TRUE)

# To obtain a prediction for x=1.5 I'm really
# asking for yhat = b0 + 1.5*b1 so my
# C = c(1, 1.5)
# and vcov applied to the glm object gives me
# the covariance matrix for the estimates
C <- c(1, 1.5)
std.er <- sqrt(t(C) %*% vcov(o) %*% C)

> pred$se.fit
[1] 0.4246289
> std.er
          [,1]
[1,] 0.4246289

Vemos que el método "a mano" que muestro da el mismo error estándar que el reportado a través de predict

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X