Investigar la robustez de la regresión logística contra la violación de la linealidad de logit

10

Estoy llevando a cabo una regresión logística con un resultado binario (inicio y no inicio). Mi combinación de predictores son variables continuas o dicotómicas.

Usando el enfoque Box-Tidwell, uno de mis predictores continuos potencialmente viola la suposición de linealidad del logit. Las estadísticas de bondad de ajuste no indican que el ajuste sea problemático.

Posteriormente ejecuté el modelo de regresión nuevamente, sustituyendo la variable continua original con: en primer lugar, una transformación de raíz cuadrada y, en segundo lugar, una versión dicotómica de la variable.

Al inspeccionar el resultado, parece que la bondad de ajuste mejora marginalmente, pero los residuos se vuelven problemáticos. Las estimaciones de los parámetros, los errores estándar y siguen siendo relativamente similares. La interpretación de los datos no cambia en términos de mi hipótesis, en los 3 modelos.Exp(β)

Por lo tanto, en términos de utilidad de mis resultados y sentido de interpretación de los datos, parece apropiado informar el modelo de regresión utilizando la variable continua original.

Me pregunto esto:

  1. ¿Cuándo es robusta la regresión logística frente a la posible violación de la linealidad del supuesto logit?
  2. Dado mi ejemplo anterior, ¿parece aceptable incluir la variable continua original en el modelo?
  3. ¿Existen referencias o guías para recomendar cuando es satisfactorio aceptar que el modelo es robusto contra la posible violación de la linealidad del logit?
Elizabeth corta
fuente

Respuestas:

16

El supuesto de linealidad se viola con tanta frecuencia en la regresión que debería llamarse sorpresa más que un supuesto. Al igual que otros modelos de regresión, el modelo logístico no es robusto a la no linealidad cuando asume falsamente la linealidad. En lugar de detectar la no linealidad utilizando residuos o pruebas de bondad de ajuste ómnibus, es mejor usar pruebas directas. Por ejemplo, expanda predictores continuos utilizando splines de regresión y realice una prueba compuesta de todos los términos no lineales. Mejor aún, no pruebe los términos y solo espere no linealidad. Este enfoque es mucho mejor que probar diferentes opciones de transformaciones de pendiente única, como la raíz cuadrada, el registro, etc., porque la inferencia estadística surge después de que tales análisis serán incorrectos porque no tiene grados de libertad de numerador lo suficientemente grandes.

Aquí hay un ejemplo en R.

require(rms)
f <- lrm(y ~ rcs(age,4) + rcs(blood.pressure,5) + sex + rcs(height,4))
# Fits restricted cubic splines in 3 variables with default knots
# 4, 5, 4 knots = 2, 3, 2 nonlinear terms
Function(f)   # display algebraic form of fit
anova(f)      # obtain individual + combined linearity tests
Frank Harrell
fuente
Su respuesta tiene mucho sentido, ¡gracias! ¿Podría sugerir una sintaxis para usar en SPSS? Lamentablemente, no tengo acceso (o habilidades) para utilizar R.
Corto Elizabeth
1
Definitivamente vale la pena aprender R, y tengo muchos folletos relacionados con el modelado logístico y el paquete rms. Esto sería difícil de hacer en SPSS.
Frank Harrell
@FrankHarrell: la f <- lrm(y ~ ...línea da un error object 'y' not found, ¿puedes arreglarlo?
arielf
1
Ese es un error R muy básico no exclusivo de mi rmspaquete. Dedique un tiempo a conocer R, comenzando con un extenso material disponible para la lmfunción de regresión básica .
Frank Harrell
1
Los ejemplos integrados en las páginas de ayuda del software simulan dichos datos, así que mire el ejemplo completo en contexto. Hacer require(rms)a continuación, ?lrma continuación,examples(lrm)
Frank Harrell