Introducción

La diabetes mellitus constituye una de las enfermedades crónicas de mayor prevalencia y relevancia en la salud pública contemporánea, particularmente en la población adulta de los Estados Unidos. El conjunto de dato diabetes_binary_5050split, derivado del Behavioral Risk Factor Surveillance System (BRFSS) del año 2015, permite examinar este fenómeno mediante el análisis de factores clínicos, conductuales y demográficos asociados con la presencia de diabetes y prediabetes. (Diabetes Health Indicators Dataset, 2015). La base de datos incluye un total de 70,692 observaciones balanceadas entre individuos con diabetes/prediabetes y sin diagnóstico de diabetes/prediabetes, organizadas en múltiples variables que capturan condiciones de salud (como presión arterial alta, colesterol elevado e índice de masa corporal), hábitos de vida (actividad física, consumo de alcohol y alimentación), salud mental y características demográficas como el sexo. A través de un enfoque de regresión logística, este estudio busca identificar y cuantificar las asociaciones entre estos factores y la presencia de diabetes/prediabetes, con el objetivo de aportar evidencia empírica que contribuya a una mejor comprensión de los determinantes de esta condición en la población adulta estadounidense.

Preparación de los datos

Este código transforma la variable de salud mental (MentHlth) a una escala de 0 a 1 para facilitar su interpretación y uso dentro del modelo de regresión logística.

diabetes_binary_5050split <-
  diabetes_binary_5050split %>%
  mutate(
    MentHlth = rescale(MentHlth, to = c(0, 1)),
    )

Este código convierte la variable de sexo (sex) en una variable categórica para que el modelo la trate correctamente como un factor y no como un valor numérico.

diabetes_binary_5050split$Sex= factor(diabetes_binary_5050split$Sex)

Este código convierte las variables binarias relacionadas con condiciones de salud y hábitos de vida en factores, asegurando que el modelo de regresión logística las interprete como variables categóricas.

binary_vars <- c(
  "HighBP","HighChol","Stroke",
  "HeartDiseaseorAttack","PhysActivity","Veggies",
  "HvyAlcoholConsump"
)

diabetes_binary_5050split[binary_vars] <-
  lapply(
diabetes_binary_5050split[binary_vars],
    factor
  )

Análisis descriptivo

Resumen de variables por estado de diabetes

library(gtsummary)

tbl_summary(
 diabetes_binary_5050split,
  by = Diabetes_binary,
  statistic = list(
    BMI ~ "{mean} ({sd})",
    MentHlth ~ "{median} ({p25}, {p75})",
    all_categorical() ~ "{n} ({p}%)"
  )
)
Characteristic 0
N = 35,346
1
1
N = 35,346
1
HighBP

    0 22,118 (63%) 8,742 (25%)
    1 13,228 (37%) 26,604 (75%)
HighChol

    0 21,869 (62%) 11,660 (33%)
    1 13,477 (38%) 23,686 (67%)
BMI 28 (6) 32 (7)
Stroke

    0 34,219 (97%) 32,078 (91%)
    1 1,127 (3.2%) 3,268 (9.2%)
HeartDiseaseorAttack

    0 32,775 (93%) 27,468 (78%)
    1 2,571 (7.3%) 7,878 (22%)
PhysActivity

    0 7,934 (22%) 13,059 (37%)
    1 27,412 (78%) 22,287 (63%)
Veggies

    0 6,322 (18%) 8,610 (24%)
    1 29,024 (82%) 26,736 (76%)
HvyAlcoholConsump

    0 33,158 (94%) 34,514 (98%)
    1 2,188 (6.2%) 832 (2.4%)
MentHlth 0.00 (0.00, 0.07) 0.00 (0.00, 0.10)
Sex

    0 19,975 (57%) 18,411 (52%)
    1 15,371 (43%) 16,935 (48%)
1 n (%); Mean (SD); Median (Q1, Q3)

La tabla descriptiva muestra que las personas con diabetes/prediabetes presentan con mayor frecuencia presión arterial alta (75% vs. 37%) y colesterol alto (67% vs. 38%) en comparación con quienes no tienen diabetes/prediabetes. Además, el índice de masa corporal promedio es más alto en el grupo con diabetes/prediabetes (32 frente a 28), y las enfermedades cardiovasculares y los derrames cerebrales son más comunes en este grupo. En contraste, la actividad física y el consumo diario de vegetales son más frecuentes entre las personas sin diabetes, mientras que el consumo elevado de alcohol es menos común en el grupo con diabetes.

Comparación del BMI entre grupos

 t.test(BMI ~ Diabetes_binary, data = diabetes_binary_5050split)
## 
##  Welch Two Sample t-test
## 
## data:  BMI by Diabetes_binary
## t = -81.591, df = 68653, p-value < 2.2e-16
## alternative hypothesis: true difference in means between group 0 and group 1 is not equal to 0
## 95 percent confidence interval:
##  -4.274321 -4.073781
## sample estimates:
## mean in group 0 mean in group 1 
##        27.76996        31.94401

La prueba t de Welch indica que existe una diferencia estadísticamente significativa en el índice de masa corporal (BMI) entre las personas con y sin diabetes. En promedio, las personas con diabetes/prediabetes presentan un BMI más alto (≈ 31.94) en comparación con aquellas sin diabetes/prediabetes (≈ 27.77). Esto sugiere que un mayor BMI está asociado con tener diabetes/prediabetes.

Visualización del BMI por actividad física y diabetes

library(ggplot2)
ggplot(diabetes_binary_5050split, aes(x = PhysActivity, y = BMI, fill = factor(Diabetes_binary))) +
  geom_boxplot() +
  labs( x = "Actividad física", y = "BMI", fill = "Diabetes")

En los boxplots observamos que, tanto entre personas físicamente activas como inactivas, el grupo con diabetes/prediabetes presenta valores de BMI más altos que el grupo sin diabetes/prediabetes. Sin embargo, entre quienes realizan actividad física, las distribuciones de BMI de personas con y sin diabetes/prediabetes son más similares, con menor diferencia entre las medianas. En contraste, en el grupo que no realiza actividad física, la diferencia de BMI entre diabéticos/prediabéticos y no diabéticos/prediabéticos es más marcada. Esto sugiere que la actividad física podría atenuar las diferencias de BMI asociadas al estado de diabetes, aunque no las elimina por completo.

Modelo de regresión logística binaria

Ajuste del modelo

mod_logit <- glm(Diabetes_binary ~ ., data = diabetes_binary_5050split, family = binomial)
summary(mod_logit)
## 
## Call:
## glm(formula = Diabetes_binary ~ ., family = binomial, data = diabetes_binary_5050split)
## 
## Coefficients:
##                       Estimate Std. Error z value Pr(>|z|)    
## (Intercept)           -3.08671    0.05143 -60.017  < 2e-16 ***
## HighBP1                1.12934    0.01814  62.267  < 2e-16 ***
## HighChol1              0.75033    0.01777  42.231  < 2e-16 ***
## BMI                    0.07510    0.00145  51.800  < 2e-16 ***
## Stroke1                0.51053    0.03979  12.831  < 2e-16 ***
## HeartDiseaseorAttack1  0.73614    0.02701  27.253  < 2e-16 ***
## PhysActivity1         -0.33008    0.01959 -16.854  < 2e-16 ***
## Veggies1              -0.17325    0.02150  -8.058 7.76e-16 ***
## HvyAlcoholConsump1    -0.92798    0.04650 -19.957  < 2e-16 ***
## MentHlth               0.22393    0.03324   6.736 1.63e-11 ***
## Sex1                   0.13972    0.01759   7.942 1.99e-15 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for binomial family taken to be 1)
## 
##     Null deviance: 98000  on 70691  degrees of freedom
## Residual deviance: 79009  on 70681  degrees of freedom
## AIC: 79031
## 
## Number of Fisher Scoring iterations: 4

En el modelo se observa que la presión arterial alta es uno de los factores más altamente relacionados con tener diabetes/prediabetes. De igual forma, el colesterol alto y un mayor índice de masa corporal se presentan con mayor frecuencia en personas con diabetes. Asimismo, quienes han tenido un derrame cerebral o una enfermedad del corazón muestran una mayor probabilidad de tener la condición. En contraste, la actividad física, el consumo de vegetales y el consumo elevado de alcohol se relacionan con una menor probabilidad de tener diabetes. Además, reportar más días de mala salud mental y ser hombre se asocia con tener diabetes con mayor frecuencia.

Interpretación de los coeficientes (odds ratios)

coefs <- summary(mod_logit)$coefficients


tabla_mod1   <- data.frame(
  Termino    = rownames(coefs),
  Logit      = round(coefs[, 1], 3),
  Odds_Ratio = round(exp(coefs[, 1]), 3),
  row.names = NULL)

tabla_mod1
##                  Termino  Logit Odds_Ratio
## 1            (Intercept) -3.087      0.046
## 2                HighBP1  1.129      3.094
## 3              HighChol1  0.750      2.118
## 4                    BMI  0.075      1.078
## 5                Stroke1  0.511      1.666
## 6  HeartDiseaseorAttack1  0.736      2.088
## 7          PhysActivity1 -0.330      0.719
## 8               Veggies1 -0.173      0.841
## 9     HvyAlcoholConsump1 -0.928      0.395
## 10              MentHlth  0.224      1.251
## 11                  Sex1  0.140      1.150
  • Intercepto: el odds ratio del intercepto (OR = 0.046) indica que, en ausencia de todas las variables explicativas incluidas en el modelo, la probabilidad base de presentar diabetes es baja. Este valor se utiliza únicamente como punto de referencia y no tiene una interpretación sustantiva directa.

  • Presión arterial alta (HighBP): las personas con presión arterial alta presentan aproximadamente tres veces más probabilidades de tener diabetes en comparación con aquellas sin hipertensión (OR = 3.094), manteniendo constantes las demás variables del modelo.

  • Colesterol alto (HighChol): los individuos con colesterol elevado tienen aproximadamente el doble de probabilidades de presentar diabetes en comparación con quienes no reportan colesterol alto (OR = 2.118), manteniendo constantes las demás variables.

  • Índice de masa corporal (BMI): por cada aumento de una unidad en el índice de masa corporal, las probabilidades de tener diabetes aumentan en aproximadamente 8% (OR = 1.078), manteniendo constantes las demás variables.

  • Derrame cerebral (Stroke): las personas que han sufrido un derrame cerebral presentan aproximadamente 67% más probabilidades de tener diabetes en comparación con quienes no reportan esta condición (OR = 1.666), manteniendo constantes las demás variables.

  • Enfermedad del corazón o infarto (HeartDiseaseorAttack): los individuos con antecedentes de enfermedad coronaria o infarto tienen aproximadamente el doble de probabilidades de presentar diabetes (OR = 2.088), manteniendo constantes las demás variables.

  • Actividad física (PhysActivity): las personas que reportan realizar actividad física presentan aproximadamente 28% menos probabilidades de tener diabetes en comparación con quienes no realizan actividad física (OR = 0.719), manteniendo constantes las demás variables.

  • Consumo de vegetales (Veggies): el consumo diario de vegetales se asocia con una reducción aproximada del 16% en las probabilidades de presentar diabetes (OR = 0.841), manteniendo constantes las demás variables.

  • Consumo elevado de alcohol (HvyAlcoholConsump): los individuos con consumo elevado de alcohol presentan aproximadamente 60% menos probabilidades de tener diabetes en comparación con quienes no reportan este patrón de consumo (OR = 0.395), manteniendo constantes las demás variables.

  • Salud mental (MentHlth): por cada incremento en la frecuencia de días con mala salud mental, las probabilidades de tener diabetes aumentan en aproximadamente 25% (OR = 1.251), manteniendo constantes las demás variables.

  • Sexo (Sex): los hombres presentan aproximadamente 15% más probabilidades de tener diabetes en comparación con las mujeres (OR = 1.150), manteniendo constantes las demás variables.

Prueba de Anova

mod_nulo <- glm(Diabetes_binary ~ 1,
                  family = binomial,
                  data = diabetes_binary_5050split)
anova(mod_nulo, mod_logit, test = "Chisq")
## Analysis of Deviance Table
## 
## Model 1: Diabetes_binary ~ 1
## Model 2: Diabetes_binary ~ HighBP + HighChol + BMI + Stroke + HeartDiseaseorAttack + 
##     PhysActivity + Veggies + HvyAlcoholConsump + MentHlth + Sex
##   Resid. Df Resid. Dev Df Deviance  Pr(>Chi)    
## 1     70691      98000                          
## 2     70681      79009 10    18991 < 2.2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

La prueba ANOVA de devianza indica que el modelo de regresión logística que incluye las variables de salud, hábitos de vida y sexo mejora significativamente el ajuste en comparación con el modelo nulo. La reducción sustancial de la devianza (18,991) y el valor p menor a 0.001 confirman que, en conjunto, las variables incluidas contribuyen de manera significativa a explicar la probabilidad de presentar diabetes o prediabetes.

Conclusión

El análisis de regresión logística realizado con los datos del BRFSS 2015 evidencia que factores como la presión arterial alta, el colesterol elevado y el índice de masa corporal están fuertemente asociados con la presencia de diabetes/prediabetes en adultos estadounidenses. Los resultados del modelo confirmaron que la presión arterial alta presenta la asociación más fuerte (OR = 3.094), seguida por el colesterol alto y las enfermedades cardiovasculares, que duplican las probabilidades de diabetes.La prueba t de Welch demostró que las personas con diabetes/prediabetes presentan un BMI significativamente más alto (31.94) comparado con quienes no tienen la condición (27.77). Los análisis descriptivos revelaron que el 75% de las personas con diabetes tienen presión arterial alta, mientras que solo el 37% del grupo sin diabetes presenta esta condición. Asimismo, los boxplots mostraron que la actividad física atenúa las diferencias de BMI entre grupos, aunque no las elimina por completo. En conjunto, estos hallazgos confirman la importancia de factores modificables como el peso corporal y la actividad física en la prevención de la diabetes. Una limitación importante de este estudio fue la dependencia de datos del 2015, subrayando la necesidad de actualizar continuamente estos análisis para mejorar las estrategias de prevención y control de la diabetes.