es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Por qué summary() muestra errores estándar diferentes a coeftest()?

Ejecuto un glm() utilizando errores estándar robustos. Para una comparación de modelos posterior, calculo la diferencia entre dos modelos de regresión (coeficientes y errores estándar). Para ese cálculo, utilizo la función summary(). Sin embargo, la función summary de los modelos muestra errores estándar diferentes a los que obtengo de coeftest(). Los valores de los coeficientes siguen siendo idénticos.

Entrada:

mod.01 <- glm(dep ~ indep1 + indep2 + indep3,
family = binomial (link = “logit”), data = data)
coeftest(mod.01, vcov. = vcovHC, type= “HC3”, df = NULL)

summary(mod.01, robust=T)

Salida:

coeftest()
Estimación Error estándar Valor t Pr(>|t|)
(Intercepto) -2.72917626 0.16367787 -16.6741 < 2.2e-16 ***
indep1 0.00427870 0.41928906 0.0102 0.991859
indep2 2.00243724 0.19757861 10.1349 < 2.2e-16 ***
indep3 0.36385098 0.32783817 1.1098 0.267159

summary()
Estimación Error estándar Valor z Pr(>|z|)
(Intercepto) -2.7291763 0.1758744 -15.518 < 2e-16 ***
indep1 0.0042787 0.3389472 0.013 0.98993
indep2 2.0024372 0.1746829 11.463 < 2e-16 ***
indep3 0.3638510 0.2604196 1.397 0.16236

¿Cómo puedo obtener el error estándar robusto de mod.01 en la función summary()? De manera que finalmente mi cálculo posterior incluya el error estándar robusto correcto que también se mostrará en la tabla de regresión.

¡Gracias de antemano!

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para incluir los errores estándar robustos obtenidos de la función coeftest() en la función summary(), puedes utilizar el comando coef(summary(object, robust = TRUE)). Esto generará una tabla de resumen con los errores estándar robustos.

    Entrada modificada:

    mod.01 <- glm(dep ~ indep1 + indep2 + indep3,
              family = binomial (link = "logit"), data = data)
    coeftest(mod.01, vcov. = vcovHC, type= "HC3", df = NULL)
    
    summary(mod.01, robust = TRUE)
    

    Salida:

    coeftest()      
                               Estimado  Error estándar  Valor t  Pr(>|t|)    
        (Intercepto)         -2.72917626  0.16367787 -16.6741 < 2.2e-16 ***
        indep1               0.00427870  0.41928906   0.0102  0.991859    
        indep2               2.00243724  0.19757861  10.1349 < 2.2e-16 ***
        indep3               0.36385098  0.32783817   1.1098  0.267159    
    
    summary(mod.01, robust = TRUE)
    
    Coeficientes:
                 Estimado    Error estándar Valor z  Pr(>|z|)    
    (Intercepto) -2.7291763  0.16367787 -16.6741  < 2e-16 ***
    indep1       0.0042787  0.41928906   0.0102  0.991859    
    indep2       2.0024372  0.19757861  10.1349  < 2e-16 ***
    indep3       0.3638510  0.32783817   1.1098  0.267159    
    

    Es importante tener en cuenta que la función summary en este caso solo mostrará los errores estándar robustos si se especifica el argumento robust = TRUE.

Comments are closed.