¿Alguna vez has visto en algún artículo científico la regresión logística?
O has visto o te lo han recomendado utilizarlo con los datos que tienes entre manos.
Pero lo cierto, es que no tienes demasiada idea de qué es una regresión logística ni cómo interpretarla.
En este artículo te voy a ayudar a interpretar esta técnica.
Se utiliza muchísimo en investigaciones de salud pero es aplicable en muchos otros campos.
¿Empezamos?
¿Qué es un modelo estadístico? Y en particular, una regresión lineal
Primero de todo quiero ayudarte a entender qué es un modelo estadístico.
En este artículo te explico el ejemplo con más detalle.
La frecuencia cardíaca máxima es lo máximo que puede llegar en corazón en un corto período de tiempo.
Y es importante para diseñar entrenamientos de deportistas.
Medirla es muy costoso tanto para el profesional de salud como para el deportista.
Lo mejors es encontrar una regla que te permita calcular la frecuencia cardíaca máxima sabiendo la edad de los pacientes.
¿Cómo lo hacemos?
Recogiendo datos.
Cada punto que ves en esta imagen son pacientes donde se les ha medida la frecuencia cardíaca máxima y se sabe su edad.
Fíjate que los puntos dibujan algo parecido a una tendencia hacia abajo.
Una regresión lineal es un modelo estadístico que nos permite explicar los datos con una recta.
¡Voilà!
Hemos encontrado un modelo matemático (una recta) que relaciona la frecuencia cardíaca máxima con la edad.
O dicho de otro modo, nos relaciona un fenómeno causa-efecto:
- Causa: edad – envejecimiento del corazón ->
ES LA VARIABLE DE ENTRADA O EXPLICATIVA - Efecto: frecuencia cardíaca máxima ->
ES LA VARIABLE DE SALIDA O RESPUESTA
Fíjate que en la fórmula matemática de la recta el coeficiente que acompaña la edad es negativo. (-0.72 para hombres y -0.65 para mujeres)
Indica una relación inversa. A mayor edad, menor es la frecuencia cardíaca máxima.
¿Se ve?
¡Bien!
Incluso si pones la edad en la fórmula podrías tener una idea de tu frecuencia cardíaca máxima. (evidentemente con un error porque es una predicción)
¡Intenta aplicar la fórmula de la recta!
Ahora ya entiendes mejor qué es un modelo estadístico. En particular una regresión lineal.
Comparando la regresión lineal y la regresión logística
Fíjate que el modelo de regresión lineal que acabas de ver es con una variable cuantitativa como variable de salida.
¿Qué pasa si la variable de salida es cualitativa?
Por ejemplo, una variable cualitativa, llamada GRAVE. Que indique si el estado del paciente es GRAVE o NO. Dos grupos:
- 0 = Sin gravedad
- 1 = Con Gravedad
Ahora la regresión lineal no se puede aplicar.
No podemos dibujar una nube de puntos como la que has visto antes.
¿Qué podemos hacer?
Transformar la variable de salida con el operador logístico.
Este operador matemático trata de convertir el grupo 0 o 1 por una probabilidad de ser un paciente grave o no.
Transforma la variable cualitativa en un número. Que es una probabilidad
¡Esta es la clave!
De esta forma podemos utilizar la misma estructura que la regresión lineal.
¡Toma!
Simplemente estamos convirtiendo la variable respuesta, que es cualitativa, en una probabilidad, que es cuantitativa.
¡Bien!
Quédate con la idea de que la regresión logística tiene la misma estructura que la regresión lineal. Con el ejemplo que vas a ver ahora te ayudaré a entender lo que te acabo de compartir.
Un ejemplo aplicado de la regresión logística
Este ejemplo me encantó cuando estuve en curso formativo de Sant Joan de Déu.
Imagínate que tienes datos de personas que tienen problemas de apnea del sueño.
Por si no lo sabes, son los problemas respiratorios al dormir.
Las personas con apnea del sueño dejan de respirar durante unos segundos por un problema en el músculo del cuello. Y lo repiten durante la noche con frecuencia.
No descansan bien y a la larga pueden tener repercusiones importantes en la salud del corazón.
A ti te interesa analizar estas personas y ver cuándo la enfermedad es realmente grave o cuando no.
Hay una variable que indica si la situación del paciente es grave o no. Es el número medio de apneas en una hora.
Si es más de 30 la cosa es peligrosa.
Si no pasa este número se puede considerar un enfermo no tan grave.
Ahora lo que quieres es tener un modelo para predecir la probabilidad de ser grave sabiendo la presión diastólica del paciente.
El objetivo de este estudio es encontrar un modelo que explique las probabilidades de que un paciente de apnea sea grave o no.
Hemos recogido datos y hemos utilziado dos variables. Nuestra tabla de datos es esta:
Una variable cuantitativa, la presión arterial mínima (diastólica). Que será la variable de entrada.
Una cualitativa binaria, IAH30. Que será la variable de salida.
- 1 = Es grave (más de 30 apneas por hora)
- 0 = No es grave (menos de 30 apneas por hora)
Para este caso crearás una regresión lineal de dos variables cuantitativas.
¿Y cómo?
La variable de salida la vas a convertir a probabilidad con el operador logístico.
- La variable Y es la probabilidad de estar grave. Convertirás la variable cualitativa a una cuantitativa.
- La variable X es la variable Presión diastólica (la baja)
Sería algo así:
logit (P(grave) ) = a + b*Presión Diastólica
Fíjate que la estructura es la misma que una regresión.
Y ahora el resultado del software estadístico:
logit (Probabilidad Grave) = -6.16228 + 0.04681*Presión Diastólica
¿Y te preguntarás para qué te sirve este modelo?
Como pasaba con la regresión, sirve para predecir y ver relaciones. En este caso vas a poder predecir probabilidades.
Si observas el coeficiente es positivo y es significativo lo cual puedes afirmar que a mayor persión diastólica mayor es la probabilidad de ser un paciente rave de apnea.
Además puedes predecir resultados.
Imagínate que quieres calcular la probabilidad de ser grave si el paciente tiene una presión diastólica de 170.
logit(Probabilidad Grave) = -6.16228 + 0.04681*170 = 0.8576
Y para calcular la probabilidad hay que hacer la inversa del logit famoso.
Esto te lo hace el software, no te preocupes 😉
Pero te lo pongo para que lo entiendas.
?????−1(0.8576)= 1/(1+?−0.8576) = 0.7021 = 70.21%
La probabilidad de ser Grave si tienes una Presión sistólica de 170 es de 70.21 %.
¿Se ve?
BONUS: generalizando la regresión logística
Pero puedes complicar el asunto.
Y puedes añadir más variables X. Incluso variables categóricas.
Mi consejo como siempre es que no te pases creando un modelo complicado.
Aconsejo usar una categórica como mucho y después entre 1 y 3 numéricas. El modelo ya es bastante complicado de esta manera.
Otra situación del ejemplo.
Quieres ver la probabilidad de estar grave teniendo en cuenta:
- El género: masculino, femenino
- La edad
- La presión sistólica
Si calculamos el modelo obtenemos:
logit (Probabilidad Grave) = -7.32477 + 0.04029*Presión Diastólica + 0.66036*Sexo + 0.04302*Edad
Tienes que la edad contribuye a ser un enfermo grave, también ser hombre influye porque los coeficientes son positivos y la presión sistólica también.
Las tres variables influyen favorablemente en la respuesta.
Te muestro dos ejemplos de cálculo, de predicción. El primero:
- El género: masculino
- La edad: 67
- La presión sistólica 150
La probabilidad para este caso de ser grave es del 71.21%
El segundo ejemplo:
- El género: femenino
- La edad: 67
- La presión sistólica 150
La probabilidad para este caso de ser grave es del 69.69%
…
Hasta aquí el ejemplo de la regresión logística o modelos logísticos.
Ahora ya entiendes qué significa y cómo puedes interpretar este tipo de modelos.
Al final, es una generalización de la regresión lineal.
La regresión logística es un tipo de modelo lineal generalizado que te hablaré en otro post.
¡Nos vemos pronto!
Cuéntame qué te ha parecido el artículo en los comentarios 😉
¡Ciao ciao!
Me gusta mucho tu blog, creo que compartes varios conceptos de manera sencilla. Sin embargo, en la regresión logística en particular, creo que tienes una errata: mencionas que los valores recogidos en la tabla son de Tensión Arterial Mínima (diastólica). Sin embargo el título de la columna es TAS_m. Tanto por ello, como por los valores, pareciera corresponder más bien a la Tensión Arterial Sistólica media.
Gracias Daniel por el comentario!
¡Sí! Es cierto.
Con temas médicos a veces me pierdo un poquitín. Lo que dices tienes todo el sentido del mundo.
Abrazos!
Muy buen articulo, y bastante bien explicado! Tenia una duda sobre la segunda parte del ejemplo, con respecto al modelo que usas: género; edad; y presión sistólica. Queria saber los valores que usas ahí mismo, es decir, como realmente quedaria la tabla en un Excel, por ejemplo. Ya que quise probarlo, y me tiro error de entrada de parametros.
Muchas gracias desde ya.
Excelente explicación…un favor….resolviendo la ecuación que mencionas de ejemplo….
logit(Probabilidad Grave) = -6.16228 + 0.04681*170 = 0.8576
No consigo llegar a 0,8576!!! me sale 1,795….hay algo que no estoy haciendo bien??
Gracias me gustaria añadir como interrogante si se puede utlizar con variables de categorias conteniendo 5 caracteristicas ,ejemplo que contenga una variable conteniendo categorias blanco , rojo , azul , amarillo , verde estas 5 categorias en una variable como variable llamado color y asi otras dos variables categoricas que contengan tambien mas de 2 caracteristica
Buenas tardes.
Lo primero de todo, muchísimas gracias por tu post. Me ha servido mucho, especialmente para entender bien la diferenciación entre regresión lineal y regresión logística, que me había llevado tiempo, pues estoy estudiando esto por mi cuenta.
Sin embargo sí que me gustaría que explicaras un poco más el segundo ejemplo. No me salen los mismos valores que a ti y tampoco sé como estás puntuados la variable sexo, por ejemplo.
No se si me he explicado bien.
Hola Jordi. Aunque soy matemático no soy experto en estadística y justo necesitaba entender la idea principal de la regresión logística para un modelo de riesgo para covid.
Encontré tu explicación clara, concisa y muy útil. Te lo agradezco. Espero que estés bien.
Saludos
Joaquin Delgado
UAM-I
México
Gracias Joaquín. Me alegra que te haya sido de utilidad! Un abrazo!
hola , la variable de covid también se incluiría como explicativa cualitativa dentro del modelo ?, necesito hacer un modelo de logit para el caso de coronavirus.
Esta formula me dificulta entender
???−1(0.8576)= 1/(1+?−0.8576) =…
Creo que hay error
Viendo esto te hago una pregunta ….como seria el analisis si la investigacion es a travez del tiempo…..es decir ….se observa a los individuos por un lapso de tiempo…..y luego de cierto presentan sintomas de la enfermedad…. ejemplo una gripe comun…..serviría un modelo logistico?
a lo mejor digo un disparate …pero no se coges la idea
Puedes ayudarme con ejercicios. Estudio Epidemilogia y usan R. Cuanto cobras
Pienso que al incluir la presión sistólica en lugar de la diastólica que mencionas obtenemos resultados diferentes.
Muy clarificador, explicación sencilla pero muy acertada. Agradecería también mayor desarrollo en el segundo ejemplo, como por ejemplo la definición de las variables numéricas como discretas, continuas, quien es la categoría de referencia…
Muchas gracias¡