1. Software

1.1. Motivación

  • R:
    • Es un programa SERIO de análisis de datos
    • Es de licencia libre (GRATIS)
    • Va incorporando las nuevas técnicas con celeridad
    • Es un lenguaje de programación (algo arduo para los “no informáticos”)
  • R Commander:
    • Es R, disfrazado de menús y ventanas
    • Para ser más accesible a los “no informáticos”
    • También va ampliando sus menús, aunque no tan rápido

1.2. Instalación

1.2.1. Instalar R (solo la primera vez!!!)

  1. Ir a la web oficial web
  2. Download: CRAN
  3. Elige un país cercano
  4. Elige tu versión Download R for… (segÚn seas de Windows, Mac o Linux)
  5. Guarda el archivo (es el instalador)
  6. Abre el archivo guardado (el instalador)
  7. Acepta todas las respuestas marcadas a las preguntas que hace el instalador ([Intro] todo el tiempo, excepto si tienes alternativas claras)

1.2.2. Instalar R Commander (solo la primera vez!!!)

  1. Abre R
  2. Menú Paquetes > Instalar paquete(s)... instala
  3. Ventana emergente para elegir país cercano (OK)
  4. Ventana emergente de Paquetes. Elige Rcmdr (OK)
  5. Empieza a instalarlo… (da tiempo a tomar un café)
  6. Si sale mensaje de error, volver a repetir desde el punto 2
  7. Al final acaba bien (aunque le cueste).
    • Si hay problemas con la instalación, recomiendo buscar tutoriales en YouTube buscando con las palabras clave incluyendo el tipo de ordenador o sistema operativo (por ejemplo instalar "R Commander" mac)
  8. Cierra todo (por higiene). Si te pregunta por “Guardar?” di que No

1.3. Iniciar R Commander

1.3.1. Abrir R Commander (esto ya cada vez)

  1. Abre R
  2. Menú Paquetes > Cargar paquete... carga
  3. Ventana emergente. Elige Rcmdr (OK)
  4. Puede salir un mensaje de alerta: acepta y que complete la instalación si le faltaba algo
  5. Finalmente se abre una gran ventana: la del “R Commander”, que debe convivir con la otra (la del R)

1.3.2. La ventana de R Commander

  • rcommander
  • Deja la ventana de R abierta (será necesaria para mostrar las gráficas, ayudas, etc.)

1.4. Importar datos

1.4.1. Leer datos

  • rcommander
  • Elegir según sea el origen de los datos
    • SPSS
    • Excel
    • Archivo de texto (tipo CSV, TXT, u otros), etc.

1.4.2. Visualizar / editar datos (o modelos)

  • Botón CONJUNTO DE DATOS: permite seleccionar, de entre los conjuntos de datos que se hayan leído, uno de ellos para ser analizado
  • Botón VISUALIZAR CONJUNTO DE DATOS: abre ventana para ver rcommander
  • Botón EDITAR CONJUNTO DE DATOS
    • Abre la tabla (buscar en ventana de R)
    • Editar, si es necesario, y cerrar ventana de tabla (en R) para que se den los cambios rcommander
  • Botón MODELOS: permite seleccionar, de entre los modelos que se hayan pedido, uno de ellos para ser analizado

1.4.3. Manipular los datos

  • Para filtrar casos, excluir los “no contesta”, y poco más datos
  • Para retocar o crear nuevas variables basadas en las que ya hay dat2
  • Recodificar variables...: útil para reordenar niveles, o pasar de muchas categorías a pocas (en variable categórica)
    • Elegir variable(s) a recodificar
    • Usar nombre para nueva variable
    • Poner el criterio de cambio de valores: por ejemplo:
      • 7,8,9 = "high"
      • "Sí" = 1
      • "missing" = NA (los datos faltantes en R se escriben realmente como NA)
  • Calcular una nueva variable...: a partir de otras variables ya presentes, mediante operaciones. En la casilla Expresión a calcular se puede poner una fórmula o una condición para recodificar. Por ejemplo:
    • peso/altura^2 serviría para crear una nueva variable, a partir de las variables peso y altura que ya estén en los datos, que se podría bautizar como IMC
    • ifelse( condición , valor si se cumple , valor si no se cumple ) sirve para recodificar una variable de otra manera. Un ejemplo concreto: ifelse( peso/altura^2 >= 18.5 & peso/altura^2 < 25 , "normal", "fuera" ) crea una nueva variable cuyos datos serán "normal" o "fuera", según el valor de las variables peso y altura de cada individuo cumpla, o no, las dos condiciones escritas
  • Segmentar variable numérica...: convertirla en categórica agrupando en intervalos (p.ej. pasar altura numérica a categorías “bajo”, “medio”, “alto”)
  • Reordenar niveles de factor...: útil para reordenar niveles, o pasar de muchas categorías a pocas (en variable categórica)

1.5. Primeros menús

1.5.1. Primeras estadísticas

  • menuestad1
  • MENÚ Estadísticos > Resúmenes
    • Conjunto de datos activo: resume todas las variables de la hoja de datos
    • Resúmenes numéricos...: media, desviación, rango intercuartil y cuartiles de variables numéricas
    • Distribución de frecuencias...: tabla de frecuencias de variables categóricas
    • Número de observaciones ausentes: cuántos datos faltan de cada columna
    • Tabla de estadísticas...: un estadístico (p.ej. media, mediana, desviación, etc.) separando por grupos, indicados por otras variables (p.ej. media de altura separando por sexo)

1.5.2. Estadísticas de tablas de contingencias

  • menuestad2
  • MENÚ Estadísticos > Tablas de contingencia
    • Tabla de doble entrada...: analiza dos variables categóricas
    • Tabla de entradas múltiples...: analiza dos variables categóricas separando por grupos dados por otra(s) variable(s)
    • Introducir y analizar una tabla de doble entrada...: permite escribir “a mano” una tabla de doble entrada (sin usar los datos)

2. Estudio del efecto de ciertos factores sobre una variable DICOTÓMICA

2.1. Variables en juego

  • \(Y\):
    • variable respuesta, o dependiente, o explicada,…
    • categórica con 2 categorías (0/1, No/Sí, Sano/Enfermo,…)
    • se dice dicotómica o binaria
  • \(X\):
    • variable de control, o independiente, o explicativa,… (el factor)
    • puede ser:
      • categórica con 2 categorías (dicotómica)
      • categórica con más de 2 categorías
      • numérica (discreta o continua)
  • \(X_1\), \(X_2\), etc.:
    • cuando hay más de una variable de control (los factores)
    • cada una puede se de un tipo distinto

2.2. Análisis del efecto de un factor dicotómico \(X\) sobre una variable dicotómica \(Y\)

  • Ejemplo genérico: ¿La Exposición (\(X\), Sí/No) influye sobre contraer la Enfermedad (\(Y\), Sí/No)?

2.2.1. Tabla de contingencia (o de doble entrada o cruzada)

  • Visualizar los datos como tabla de contingencia

    \(\begin{array}{ll|ll} & & \text{Enfermedad} & \\ & & \text{Sí} & \text{No} \\ \hline \text{Exposición} & \text{Sí} & a & b \\ & \text{No} & c & d \end{array}\)

  • Para ver el efecto de \(X\) sobre \(Y\) es mejor dar porcentajes por fila, y ver cómo se reparte la \(Y\) para cada \(X\)

  • Con R Commander: menú Estadísticos > Tablas de contingencia > Tabla de doble entrada.... Se abre ventana.

    • Pestaña "Datos": elegir variable de filas (\(X\), Exposición) y variable de columnas (\(Y\), Enfermedad)
    • Pestaña "Estadísticos": elegir los porcentajes deseados (si se desean). Los Test de hipótesis los vemos después
    • Aceptar y ver resultados
  • Practica con nuestros datos: ¿El estado de salud (Estado_Salud_2cat) influye sobre la calidad de vida (Calidad_vida_2cat)?

    • Escribe la tabla de contingencia de ambas variables, de modo que el estado de salud esté en las filas, y la calidad de vida en las columnas
    • Incluye la tabla con porcentajes por filas
    • ¿Qué porcentaje de las personas con buen estado de salud sienten una buena calidad de vida?
    • ¿Qué porcentaje de las personas que no tienen buen estado de salud sienten una buena calidad de vida?

2.2.2. Un diagrama de barras adecuado

  • Visualizar los datos con la gráfica que mejor refleje el efecto de \(X\) sobre \(Y\)
    • En el eje X se coloca la variable \(X\) (sobre el que se crean las barras verticales)
    • En las barras se distribuye la variable \(Y\), y se ve el efecto de cada \(X\) posible
  • Con R Commander:
    • Gráficas > Gráfica de barras... (se abre ventana)
    • Elegir variable \(X\) (en el ejemplo genérico, Exposición)
    • En botón "Gráfica por grupos" elegir la variable respuesta \(Y\) (en el ejemplo genérico, Enfermedad)
    • En "Opciones" elegir "Porcentajes" (el resto de opciones por defecto)
  • Practica con nuestros datos: representa gráficamente el efecto del Estado de salud (Estado_salud_2cat) sobre la calidad de vida (Calidad_vida_2cat) y observa cómo cambian los porcentajes en cada columna del estado de salud

2.2.3 Contraste de independencia entre la variable \(Y\) y el factor \(X\)

  • Se puede analizar la posible independencia estadística entre variable y factor
  • Contraste de independencia (Chi-cuadrado de Pearson) (para variables categóricas)
    • \(H_0\): \(X\)e \(Y\) independientes (estadísticamente)
    • \(H_1\): no \(H_0\)
  • Se calcula un estadístico a partir de la tabla (el Chi-cuadrado)
  • Se calcula la compatibilidad de ese estadístico con \(H_0\) (el llamado \(p\)-valor)
    • Si \(p\)-valor \(< \alpha\), la muestra es poco compatible con \(H_0\) y se rechaza la independencia
    • Si \(p\)-valor \(\geq \alpha\), la muestra es lo bastante compatible con \(H_0\) y se acepta la independencia
  • Nivel de significación \(\alpha\): se suele tomar como referencia \(\alpha = 0.05\) (pero puede ser \(0.10\), \(0.01\), \(0.001\),…)
  • Con R Commander: menú Estadísticos > Tablas de contingencia > Tabla de doble entrada.... Se abre ventana.
    • Pestaña "Datos": elegir variable de filas (\(X\), Exposición) y variable de columnas (\(Y\), Enfermedad)
    • Pestaña "Estadísticos": elegir Test de hipótesis
    • Una vez ejecutado buscar el p-value en la ventana de Resultados
  • Practica con nuestros datos: decide si los datos inducen a rechazar que “tener buena calidad de vida” (Calidad_vida_2cat) es independiente de “tener buen estado de salud” (Estado_salud_2cat)

2.2.4. Riesgos, riesgo relativo y odds ratio

  • Una vez se descarta la independencia, se quiere medir la influencia del factor \(X\) sobre la variable \(Y\)

  • Cálculo de riesgos, riesgos relativos y odds ratio: tabla de contingencia de ejemplo genérico:

    \(\begin{array}{ll|ll|l|l} & & Y=\text{Enfermedad} & & & \\ & & & &\text{Riesgo} & \text{Odds} \\ & & \text{Sí} & \text{No} &\text{Sí} & \text{(Sí/No)} \\ \hline X=\text{Exposición} & \text{Sí} & a & b & \frac{a}{a+b} & \frac{a}{b} \\ & \text{No} & c & d & \frac{c}{c+d} & \frac{c}{d} \end{array}\)

    1. Riesgo de incidencia: es la probabilidad de Sí enfermedad.
      • Se calcula para los dos grupos (Sí exposición y No exposición)
      • Riesgo si SÍ está Exp = \(\frac{a}{a+b}\)
      • Riesgo si NO está Exp = \(\frac{c}{c+d}\)
    2. Odds de incidencia: es la fracción entre el riesgo de incidencia y su complementario
      • Odds si SÍ está Exp = \(\frac{a}{b}\)
      • Odds si NO está Exp = \(\frac{c}{d}\)
    3. Riesgo relativo: es la comparación (cociente) de riesgos, de Sí exposición respecto de No exposición
      • \(RR = \frac{\text{Riesgo de "Enf" si SÍ está "Exp"}}{\text{Riesgo de "Enf" si NO está " Exp"}} = \frac{a/(a+b)}{c/(c+d)}\)
      • Interpretación:
        • \(RR >1\), parece que Exposición es factor de riesgo para Enfermedad
        • \(RR <1\), parece que Exposición es factor protector para Enfermedad
    4. Odds ratio: es el mismo concepto, pero compara las odds, en vez de los riesgos
      • \(OR = \frac{\text{Odds de "Enf" si Sí "Exp"}}{\text{Odds de "Enf" si No "Exp"}}\)
      • Interpretación:
        • \(OR >1\), parece que Exposición es factor de riesgo para Enfermedad
        • \(OR <1\), parece que Exposición es factor protector para Enfermedad
  • Con R Commander:

    • Solo la primera vez: cargar paquete epiR (instalar si no se ha hecho antes): menú Herramientas > Cargar paquete(s).... Se abre ventana. Elegir epiR. Aceptar
    • Pedir “tabla de contingencia” mediante menú Estadísticos > Tablas de contingencia > Tabla de doble entrada.... Se abre ventana.
      • Pestaña "Datos": elegir variable de filas (\(X\), Exposición) y variable de columnas (\(Y\), Enfermedad)
    • Esa petición genera un bloque de código R en el bloque de Instrucciones:
      • local({...})
    • Añadir al final de ese bloque, pero dentro, la línea epiR::epi.2by2(.Table)
    • Marcar con el ratón todo el bloque local({...})
    • Botón Ejecutar
    • Ver resultados en ventana de Resultados:
      • Riesgo relativo: Inc risk ratio
      • Odds ratio: Odds ratio
  • Practica con nuestros datos: ¿Tener un “buen estado de salud” es un factor de riesgo o protector para tener “buena calidad de vida”?

    • Usaremos las variables con dos categorías (Estado_Salud_2cat y Calidad_vida_2cat)
    • Para interpretar bien el resultado, es importante saber lo que significa y No, ya que se compara el respecto del No
    • En particular, calcula los riesgos, el riesgo relativo y la odds ratio para saber si un “buen estado de salud” es un factor de riesgo o protector para una “buena calidad de vida”)

2.2.5. Moraleja: resumen del análisis

  • Para analizar si un factor dicotómico \(X\) ejerce una influencia considerable, y de qué tipo, sobre una variable dicotómica \(Y\), conviene hacer:
    1. Tabla de contingencia: muestra el reparto de casos, aunque no podemos intuir mucho a partir de ella
    2. Gráfica adecuada: representa la tabla de contingencia y nos permite intuir si hay algún efecto de \(X\) sobre \(Y\)
    3. Contraste de independencia: si sale aceptar, creeremos que el factor \(X\) no afecta lo bastante a la variable \(Y\). Por tanto, fin del análisis. En caso contrario, seguimos adelante
    4. Cálculo de riesgo relativo y/o odds ratio para cuantificar la relación de influencia

2.3. Análisis del efecto de un factor \(X\) (con más de 2 categorías) sobre una variable dicotómica \(Y\)

2.3.1. Tabla de contingencia (o de doble entrada o cruzada)

  • No hay diferencias con el caso 2.2.1
  • La tabla tiene más de dos filas

2.3.2. Un diagrama de barras adecuado

  • No hay diferencias con el caso 2.2.2
  • La gráfica tiene más de dos columnas

2.3.3 Contraste de independencia entre la variable \(Y\) y el factor \(X\)

  • No hay diferencias con el caso 2.2.3

2.3.4. Riesgos, riesgo relativo y odds ratio

  • Se deben comparar todas las categorías de \(X\) una de ellas que hará de “baseline” o referencia
  • Se trata de tomar la tabla de contingencia con dos categorías de la \(X\):
    • Primera fila: la categoría a comparar con la referencia (cada una de las otras)
    • Segunda fila: la referencia. Suele ser el “No”
  • Con R Commander:
    • Solo la primera vez: cargar paquete epiR (instalar si no se ha hecho antes): menú Herramientas > Cargar paquete(s).... Se abre ventana. Elegir epiR. Aceptar
    • Pedir “tabla de contingencia” mediante menú Estadísticos > Tablas de contingencia > Tabla de doble entrada.... Se abre ventana.
      • Pestaña "Datos": elegir variable de filas (\(X\), el factor) y variable de columnas (\(Y\), la respuesta)
    • Esa petición genera un bloque de código R en el bloque de Instrucciones:
      • local({...})
    • También crea la tabla de contingencia en la ventana de Resultados. Necesitamos ilustrar con un caso concreto:
      • Supongamos que el factor \(X\) tiene 5 categorías, y que la de referencia es la última (se puede mirar en la tabla). Entonces:
        • Añadir al final de ese bloque local({...}), pero dentro, las líneas:
          • epiR::epi.2by2(.Table[c(1,5),]) (ATENCIÓN EL NÚMERO 1 indica la categoría 1 de \(X\) que se va a comparar con la de referencia, que es la categoría 5 de \(X\) en este ejemplo que comentamos)
        • Marcar con el ratón todo el bloque local({...})
        • Botón Ejecutar
        • Ver resultados en ventana de Resultados:
          • Riesgo relativo: Inc risk ratio
          • Odds ratio: Odds ratio
  • Se obtienen los riesgos, riesgos relativos y odds ratio de cada categoría de \(X\) contra la de referencia
  • Repetir el proceso con cada categoría de \(X\) que se quiere comparar con la de referencia
  • Practica con nuestros datos: Relacionaremos el factor “actividad física” con la variable “buen estado de salud” a través de las variables Actividad_fisica_3cat y Estado_Salud_2cat. ¿Tener “actividad física” es un factor de riesgo o protector para tener “buen estado de salud”?
    1. Escribe la tabla de contingencia (en el orden correcto de variables mejor)
    2. Representa gráficamente si hay efecto de la “actividad física” sobre el “buen estado de salud”
    3. Analiza la presunta independencia estadística entre ambos conceptos
    4. En caso de rechazar la independencia estadística del apartado anterior, cuantifica los riesgos, riesgos relativos y odds ratio para saber si la “actividad física” es un factor de riesgo o protector de un “buen estado de salud”

3. El modelo de regresión logística de \(Y\) sobre \(X\)

3.1. Aspectos generales

  • El modelo de regresión logística de \(Y\) sobre \(X\) involucra:
    • Variable dependiente: \(Y \in \{ 0, 1\}\). Si Y es de otro modo, hay que saber que su “primera categoría” hace de “0” y la segunda hace de “1”. Se puede comprobar en el software mirando la tabla de frecuencias. Si el orden no es el deseado se deben recodificar los datos
    • Variable independiente: \(X\) (del tipo que sea)
    • Objetivo: predecir \(Y\) para nuevos individuos a partir de su valor en \(X\)
      • \(\log \left( \frac{P(Y=1|X)}{1 - P(Y=1|X)} \right) = a + bX\) (en otras palabras, log-odds = \(a+bX\))
      • Que es lo mismo que \(\frac{P(Y=1|X)}{1 - P(Y=1|X)} = \mathrm{e}^{a + bX}\) (en otras palabras, odds = \(\mathrm{e}^{a + bX}\))
      • Que es lo mismo que \(P(Y=1|X) = \frac{1}{\mathrm{e}^{-a - bX}}\)
    • El modelo se ajusta lo mejor posible a los datos de la muestra:
      • Estimación del modelo:
        • Se estima el valor de \(a\) (Intercept)
        • Se estima el valor de \(b\)
        • Se da el error estándar de las estimaciones, ya que varían al tomar distintas muestras
        • Se da el \(p\)-valor de las estimaciones (para contrastar si son lo bastante compatibles con el valor \(0\) o no)
      • Bondad de ajuste:
        • Residual deviance: intuitivamente, lo que se desvían los datos del modelo ajustado): a menor Residual deviance, mejor ajuste. No sirve para comparar modelos, porque cuantas más variables se incorporar al modelo, la Residual deviance siempre disminuye
        • AIC (Criterio de Información de Akaike): a menor AIC, mejor ajuste. Este sí que sirve para comparar modelos, ya que tiene en cuenta el número de variables involucradas
        • Coeficientes pseudo R-cuadrado: cuanto más cerca de \(1\), mejor es el ajuste
          • de Cox-Snell: \(1 - \mathrm{e}^{\frac{\text{Residual deviance} - \text{Null deviance}}{N}}\)
          • de Nagelkerke: \(\frac{1 - \mathrm{e}^{\frac{\text{Residual deviance} - \text{Null deviance}}{N}}}{1 - \mathrm{e}^{\frac{ - \text{Null deviance}}{N}}}\)
        • Contraste de bondad de ajuste de Hosmer-Lemeshow:
          • \(H_0\): “El ajuste es adecuado”
          • Se calcula un estadístico de tipo Chi-cuadrado y su \(p\)-valor:
            • Si \(p\)-valor \(< \alpha\) (por ejemplo inferior a \(0.05\)), se rechaza \(H_0\) y se decide que el ajuste es insuficiente
            • Si \(p\)-valor \(\geq \alpha\) (por ejemplo superior o igual a \(0.05\)), se acepta \(H_0\) y se decide que el ajuste es correcto
      • Predicciones sobre \(Y\):
        • El log-odds de \(Y=1\) de un individuo a partir de su valor de \(X\)
        • El odds de \(Y=1\) de un individuo a partir de su valor de \(X\)
        • La probabilidad de que \(Y=1\) de un individuo a partir de su valor de \(X\)
        • Se puede pronosticar el valor de \(Y\) usando una referencia. Por ejemplo “pronosticar \(Y=1\) si su probabilidad es mayor o igual a \(0.5\)
        • La odds ratio
  • Con R Commander:
    • Menú: Estadísticos > Ajuste de modelos > Modelo lineal generalizado...
    • Poner un nombre al modelo (opcional, por defecto pone GLM.1 u otro número si ya hay uno previo)
    • Doble clic sobre variable \(Y\) (pasa a la fórmula de abajo, en la caja izquierda, la de la variable dependiente)
    • Doble clic sobre variable \(X\) (pasa a la fórmula de abajo, en la claja derecha, la de las variables independientes)
    • Fórmula: se puede escribir a mano, o completar clicando sobre las variables, pero hay que colocar el cursor par indicar dónde irá la variable web
    • Dejar el resto de opciones por defecto: Familia binomial, función de enlace logit
    • Aceptar
    • Devuelve el resultado del ajuste en la ventana de Resultados. Contiene mucha información:
      • Call: la llamada hecha
      • Deviance residuals: resumen estadístico de las desviaciones de los datos de la muestra respecto del modelo ajustado
      • Coefficients: coeficientes del modelo ajustado, tanto el término “suelto” (\(a\), le llama Intercept) como cada coeficiente que multiplica a cada variable independiente (\(b\), etc, va con el nombre de la variable correspondiente). Para cada coeficiente se informa de:
        • Estimate: el coeficiente ajustado (\(a\), \(b\),…)
        • Std. Error: su variabilidad (no necesario)
        • z value: su valor tipificado (no necesario)
        • Pr(>|z|): el p-valor de contrastar si ese coeficiente es NULO (por ejemplo, si es mayor que \(0.05\), se motiva suprimir dicha variable del modelo y ajustarlo nuevamente)
      • Null deviance: desviación del modelo NULO (sin variables)
      • Residual deviance: desviación del modelo ajustado (con variables). Coincide con “menos 2 veces la log-verosimilitud” de los parámetros ajustados, y cuanto menor sea el valor, mejor ajusta el modelo
      • AIC: Akaike information criterion, valor que informa de la bondad del ajuste. Cuanto menor sea, mejor ajusta, y sirve para comparar modelos porque tiene en cuenta la complejidad además de la desviación para valorarlos
      • Fisher Scoring iterations: no necesario
      • exp(coef(NombreModelo)): odds ratios (de \(X=1\) respecto de \(X=0\)), para interpretar si \(X=1\) es un factor de riesgo sobre \(Y=1\) comparado con \(X=0\)
    • Cálculos adicionales: si el modelo toma el nombre GLM.x y N toma el tamaño de la muestra, se trata de escribir código en el bloque de Instrucciones y ejecutarlo con el botón Ejecutar
      • Coeficientes pseudo R-cuadrado:
        • de Cox-Snell: 1 - exp( (GLM.x$deviance - GLM.x$null.deviance) / N )
        • de Nagelkerke: (1 - exp( (GLM.x$deviance - GLM.x$null.deviance) / N ) ) / (1 - exp( - GLM.x$null.deviance / N ) )
      • Contraste de bondad de ajuste de Hosmer-Lemeshow:
        • Cargar el plugin RcmdrPlugin.ROC: menú Herramientas > Cargar Plugins de Rcmdr... y elegirlo de la lista (si no está, hay que instalarlo desde R como un paquete más)
        • Elegir el modelo con el botón de Modelo
        • Menú: ROC > pROC > Hosmer-Lemeshow GOF test...
        • Se abre ventana. Dejar opciones por defecto
        • Devuelve:
          • \(p\)-valor del contraste: para decidir sobre la bondad del ajuste
          • Tabla de contingencia de valores reales de \(Y\) vs valores pronosticados por el modelo (usando el \(0.5\) para pronosticar)
          • Porcentaje de acierto en la predicción (clasificación)

3.2 El modelo NULO

  • Es el modelo sin variable independiente \(X\)
  • \(P(Y=1)\) será la fracción de \(1\)’s en la muestra observada
  • La predicción para todos los individuos será siempre la misma: la clase mayoritaria (es decir \(Y=1\) o \(Y=0\), según lo que más abunde en la muestra)
  • Hay que intentar mejorar est modelo usando algún factor \(X\) que tenga un efecto sobre \(Y\)

3.3. Caso \(X\) dicotómica

  • \(X\) admite dos niveles
    • Un nivel tiene que hacer de “0” (referencia). Suele ser la primera categoría (según el orden, que se puede consultar haciendo la tabla de frecuencias, por ejemplo)
    • El otro nivel hace de “1”.
    • Si no interesa el orden que traen implícito los datos, se debe cambiar o especificar en el uso del software
  • Odds ratio: el modelo estima una odds ratio y se puede dar un intervalo de confianza para la misma
    • \(OR\) = \(\frac{\text{odds para} X=1}{\text{odds para} X=0}\) = \(\frac{\mathrm{e}^{a + b}}{\mathrm{e}^{a}}\) = \(\mathrm{e}^{b}\), por tanto es el coeficiente \(b\) “exponenciado”
    • Intervalo de confianza para la \(OR\): se toma el intervalo de confianza para \(b\), y se “exponencian” los extremos
  • Con R Commander:
    • Ver Sección 3.1 para la mayoría de resultados
    • Odds ratio:
      • Menú Modelos > Intervalos de confianza.... Se abre ventana. Elegir nivel de confianza. Elegir método. Aceptar. Sale en ventana de Resultados el intervalo para cada coeficiente. Hay que centrarse en el de la variable factor.
  • Practica con nuestros datos: aplica el modelo de regresión logística de la “buena calidad de vida” (Calidad_vida_2cat) respecto del “buen estado de salud” (Estado_salud_2cat) y contesta a las siguientes preguntas:
    • Escribe la ecuación que relaciona la log-odds de tener “buena calidad de vida” con el “buen estado de salud”, teniendo en cuenta que “buen” debe ser el valor “1” en ambas variables, ya que es lo que
    • ¿Es mejor el AIC del modelo ajustado que el AIC del modelo nulo? Razona
    • ¿La variable Estado_salud_2cat es prescindible en el modelo?
    • Calcula los coeficientes pseudo R-cuadrado de Cox-Snell y Nagelkerke y comenta su valor respecto a la bondad del ajuste
    • Comenta la bondad del ajuste según el contraste de Hosmer-Lemeshow
    • Calcula el porcentaje de acierto del modelo al predecir la “buena calidad de vida” en función del “buen estado de salud”, respecto a los valores reales de la muestra

3.4. \(X\) categórica con más de dos categorías

3.4.1. Despliegue de la variable factor \(X\) en variables dummy

  • Cuando la variable factor \(X\) admite más de 2 categorías, se toma la “primera” (o más baja) como referencia, y se crea una nueva variable para cada una de las otras, con un nombre “evocador”
  • Ejemplo:
    • Una variable “Peso” que tomara los valores “bajo”, `“medio” y “alto” que se use como factor en una regresión lineal se convertirá en dos variables “Peso[medio]” y “Peso[alto]” de modo que se cumple la siguiente equivalencia:

      Peso \(\to\) Peso[medio] Peso[alto]
      bajo \(\to\) 0 0
      medio \(\to\) 1 0
      bajo \(\to\) 0 1
    • La variable “Peso” del modelo se remplaza por las variables dicotómicas “Peso[medio]” y “Peso[alto]”, y cada una tiene asociado un coeficiente, de modo que se trata de un modelo de regresión logística “múltiple”

      • log-odds = \(a + b \text{Peso[medio]} + c \text{Peso[alto]}\)
      • Odds = \(\mathrm{e}^{a + b \text{Peso[medio]} + c \text{Peso[alto]}}\)
      • \(P(Y=1) = \frac{1}{ 1 + \mathrm{e}^{-a - b \text{Peso[medio]} - c \text{Peso[alto]}} }\) para cada individuo
    • La notación puede variar según el software utilizado, pero siempre es en el mismo sentido

3.4.2. Aplicación del modelo

  • El modelo de regresión logística es ahora múltiple:
    • log-odds = \(a + bX[\text{valor2}] + cX[\text{valor3}]\) (por ejemplo, si \(X\) tiene 3 categorías)
  • La aplicación del modelo es igual que en el caso dicotómico (ver Sección 3.1), en todos los aspectos, con la diferencia:
    • Odds ratio: hay una OR para cada nivel de \(X\) distinto del de referencia, que se obtiene comparando dicho nivel con el de referencia. El valor de la OR estimada es el coeficiente correspondiente (“exponenciado”)
  • Practica con nuestros datos: aplica el modelo de regresión logística del “buen estado de salud” (Estado_salud_2cat) respecto de la “actividad física” (Actividad_fisica_3cat) y contesta a las siguientes preguntas:
    • Escribe la ecuación que relaciona la log-odds de tener “buen estado de salud” con la “actividad física”, teniendo en cuenta que “buen” debe ser el valor “1” en el estado de salud, y la actividad física de referencia es “Poca actividad”
    • ¿Es mejor el AIC del modelo ajustado que el AIC del modelo nulo? Razona
    • Calcula los coeficientes pseudo R-cuadrado de Cox-Snell y Nagelkerke y comenta su valor respecto a la bondad del ajuste
    • Comenta la bondad del ajuste según el contraste de Hosmer-Lemeshow
    • Calcula el porcentaje de acierto del modelo al predecir el “buen estado de salud” en función de la “actividad física”, respecto a los valores reales de la muestra

3.5. \(X\) numérica

  • El modelo de regresión es formalmente el mismo que puedes ver en la Sección 3.1
  • La aplicación del modelo es igual que en el caso dicotómico (ver Sección 3.3), en todos los aspectos, con la diferencia:
    • Odds ratio: representa la comparación entre un individuo con un valor de \(X\) respecto de otro cuyo valor es una unidad menor
  • Practica con nuestros datos: aplica el modelo de regresión logística del “buen estado de salud” (Estado_salud_2cat) respecto de la “adherencia a la dieta mediterránea” (Adherencia_DM) y contesta a las siguientes preguntas:
    • Escribe la ecuación que relaciona la log-odds de tener “buen estado de salud” con la “actividad física”, teniendo en cuenta que “buen” debe ser el valor “1” en el estado de salud, y la actividad física de referencia es “Poca actividad”
    • ¿Es mejor el AIC del modelo ajustado que el AIC del modelo nulo? Razona
    • Calcula los coeficientes pseudo R-cuadrado de Cox-Snell y Nagelkerke y comenta su valor respecto a la bondad del ajuste
    • Comenta la bondad del ajuste según el contraste de Hosmer-Lemeshow
    • Calcula el porcentaje de acierto del modelo al predecir el “buen estado de salud” en función de la “actividad física”, respecto a los valores reales de la muestra

4. El modelo de regresión logística de \(Y\) sobre \(X_1\), \(X_2\), etc. (múltiple)

4.1. Aplicación del modelo completo

  • Lo habitual es que diversos factores (\(X_1\), \(X_2\), etc.) afecten a cierta variable respuesta \(Y\)
  • Se motiva introducir todos esos factores en el modelo de regresión logística, quedando:
    • Log-odds = \(b_0 + b_1 X_1 + b_2 X_2 + \cdots\)
    • Odds = \(\mathrm{e}^{b_0 + b_1 X_1 + b_2 X_2 + \cdots}\)
    • \(P(Y=1) = \frac{1}{1 + \mathrm{e}^{-b_0 - b_1 X_1 - b_2 X_2 - \cdots}}\)
  • La aplicación del modelo es similar a la del caso simple (ver Sección 3), en todos los aspectos, con las siguientes diferencias:
    • Odds ratio: se estudian para cada variable por separado

4.2. Selección del mejor modelo

  • El modelo completo puede incluir variables que no aportan realmente un mejor ajuste
  • Hay diversos métodos para llegar a un modelo que ajuste lo suficiente, sin hacer uso de demasiados factores:
    • Forma de pasar de un modelo a otro:
      • Del nulo hacia adelante: añade la “mejor” variable a cada paso hasta que el modelo no puede mejorar
      • Del completo hacia atrás: suprime la “peor” variable a cada paso hasta que el modelo no puede mejorar
      • Del nulo hacia adelante/atrás: añade la “mejor” variable o suprime la “peor” a cada paso hasta que el modelo no puede mejorar
      • Del completo hacia atrás/adelante: suprime la “peor” variable o añade la “mejor” a cada paso hasta que el modelo no puede mejorar
    • Criterio de mejora del modelo:
      • AIC (Criterio de Información de Akaike): cuanto menor valor, mejor ajusta el modelo. Se suprime/añade la variable que mejor resultado produce
      • BIC (Criterio d Información de Bayes): cuanto menor valor, mejor ajusta el modelo. Se suprime/añade la variable que mejor resultado produce
      • Razón de verosimilitudes (Wald): Se suprime/añade la variable con peor/mejor estadístico de Wald
  • Con R Commander:
    • Elegir el modelo con el botón de Modelo
    • Menú Modelos > Selección de modelo paso a paso...
    • Se abre ventana. Elegir Dirección y Criterio
    • Devuelve el proceso completo, con las alternativas en cada paso y el criterio para ver cómo ha evolucionado el modelo hasta encontrar el mejor
    • Una vez encontrado, se muestran los coeficientes del modelo definitivo
    • Si se desea más información, pedir el ajuste a dicho modelo desde el menú Estadisticos > Ajuste de modelos... > Modelo lineal generalizado... usando las variables implicadas
  • Practica con nuestros datos: aplica el modelo de regresión logística del “buen estado de salud” (Estado_salud_2cat) respecto de un grupo variables que parecen tener relación con ella, que no sean redundantes, y contesta a las siguientes preguntas:
    • Escribe la ecuación del modelo completo, que relaciona la log-odds de tener “buen estado de salud” con el resto de variables
    • Calcula los coeficientes pseudo R-cuadrado de Cox-Snell y Nagelkerke y comenta su valor respecto a la bondad del ajuste
    • Comenta la bondad del ajuste según el contraste de Hosmer-Lemeshow
    • Procede a simplificar el modelo siguiendo el criterio de mejor AIC.
      • Muestra todos los pasos
      • Escribe la ecuación del modelo final
      • Calcula los coeficientes pseudo R-cuadrado de Cox-Snell y Nagelkerke y comenta su valor respecto a la bondad del ajuste
    • Comenta la bondad del ajuste según el contraste de Hosmer-Lemeshow
    • Escribe la tabla de valores reales vs predicciones del modelo, y calcula el porcentaje de coincidencias