De la siguiente base de datos

url <- “https://raw.githubusercontent.com/jbrownlee/Datasets/master/pima-indians-diabetes.data.csv

La base de datos Pima Indians Diabetes contiene 8 variables predictoras relacionadas con medidas clínicas y personales, y 1 variable de salida (Outcome) que indica si una persona tiene diabetes.

Realizar:

Descripción de la data

# Cargar datos
url <- "https://raw.githubusercontent.com/jbrownlee/Datasets/master/pima-indians-diabetes.data.csv"
dt <- read.csv(url, header = FALSE)

# Nombrar las columnas
colnames(dt) <- c("NumPregnancies", "Glucose", "BloodPressure", "SkinThickness",
                  "Insulin", "BMI", "DiabetesPedigree", "Age", "Outcome")

# Resumen estadístico
summary(dt)
##  NumPregnancies      Glucose      BloodPressure    SkinThickness  
##  Min.   : 0.000   Min.   :  0.0   Min.   :  0.00   Min.   : 0.00  
##  1st Qu.: 1.000   1st Qu.: 99.0   1st Qu.: 62.00   1st Qu.: 0.00  
##  Median : 3.000   Median :117.0   Median : 72.00   Median :23.00  
##  Mean   : 3.845   Mean   :120.9   Mean   : 69.11   Mean   :20.54  
##  3rd Qu.: 6.000   3rd Qu.:140.2   3rd Qu.: 80.00   3rd Qu.:32.00  
##  Max.   :17.000   Max.   :199.0   Max.   :122.00   Max.   :99.00  
##     Insulin           BMI        DiabetesPedigree      Age       
##  Min.   :  0.0   Min.   : 0.00   Min.   :0.0780   Min.   :21.00  
##  1st Qu.:  0.0   1st Qu.:27.30   1st Qu.:0.2437   1st Qu.:24.00  
##  Median : 30.5   Median :32.00   Median :0.3725   Median :29.00  
##  Mean   : 79.8   Mean   :31.99   Mean   :0.4719   Mean   :33.24  
##  3rd Qu.:127.2   3rd Qu.:36.60   3rd Qu.:0.6262   3rd Qu.:41.00  
##  Max.   :846.0   Max.   :67.10   Max.   :2.4200   Max.   :81.00  
##     Outcome     
##  Min.   :0.000  
##  1st Qu.:0.000  
##  Median :0.000  
##  Mean   :0.349  
##  3rd Qu.:1.000  
##  Max.   :1.000
# Dimension 
dim(dt)
## [1] 768   9
# Mostrar la primeras filas 
head(dt)
##   NumPregnancies Glucose BloodPressure SkinThickness Insulin  BMI
## 1              6     148            72            35       0 33.6
## 2              1      85            66            29       0 26.6
## 3              8     183            64             0       0 23.3
## 4              1      89            66            23      94 28.1
## 5              0     137            40            35     168 43.1
## 6              5     116            74             0       0 25.6
##   DiabetesPedigree Age Outcome
## 1            0.627  50       1
## 2            0.351  31       0
## 3            0.672  32       1
## 4            0.167  21       0
## 5            2.288  33       1
## 6            0.201  30       0
# Mostar las ultimas filas 
tail(dt)
##     NumPregnancies Glucose BloodPressure SkinThickness Insulin  BMI
## 763              9      89            62             0       0 22.5
## 764             10     101            76            48     180 32.9
## 765              2     122            70            27       0 36.8
## 766              5     121            72            23     112 26.2
## 767              1     126            60             0       0 30.1
## 768              1      93            70            31       0 30.4
##     DiabetesPedigree Age Outcome
## 763            0.142  33       0
## 764            0.171  63       0
## 765            0.340  27       0
## 766            0.245  30       0
## 767            0.349  47       1
## 768            0.315  23       0

Eleccion de variables

En este caso utilizare las variables BMI(indice de masa corporal) y Outcome(diabetes) con el fin de evaluar si existe relacion. para esto filtramos nuestros datos y nos aseguramos de quitar los valores perdidos de cada variable.

datos <- dt[!is.na(dt$BMI) & !is.na(dt$Outcome), ]
head(datos[, c("BMI", "Outcome")])
##    BMI Outcome
## 1 33.6       1
## 2 26.6       0
## 3 23.3       1
## 4 28.1       0
## 5 43.1       1
## 6 25.6       0

Plantear hipótesis

H_0=Las distribuciones de BMI son iguales para personas con y sin diabetes. (No hay diferencia significativa en los niveles de BMI entre los dos grupos)

H_1=Las distribuciones de BMI No son iguales para personas con y sin diabetes. (si hay diferencia significativa en los niveles de BMI entre los dos grupos)

Validar normalidad de las variables (según la hipótesis)

planteamineto de Hipotesis H_0=Los datos presentan distribucion normal H_1=Los datos no presentan una distribucion normal

# Prueba de normalidad (Shapiro-Wilk) 
shapiro.test(dt$BMI)
## 
##  Shapiro-Wilk normality test
## 
## data:  dt$BMI
## W = 0.94999, p-value = 1.842e-15
shapiro.test(dt$Outcome)
## 
##  Shapiro-Wilk normality test
## 
## data:  dt$Outcome
## W = 0.60251, p-value < 2.2e-16

Interpretacion Dado que p-evalue < 0.05 entonces se rechaza la hipotesis Nula, es decir que los datos de ambas variables no presentan una distribucion normal.

Realizar correlación

cor( dt$BMI, dt$Outcome, method = "kendall")
## [1] 0.253676

Aplicar prueba estadística que corresponda según las variables

Aplicamos la prueba de Wilcoxon , por que nuestros datos no siguen una distribucion normal, entonces es la prueba ideal para estos datos.

# Prueba de Wilcoxon 
wilcox.test(BMI ~ Outcome, data = datos)
## 
##  Wilcoxon rank sum test with continuity correction
## 
## data:  BMI by Outcome
## W = 41866, p-value < 2.2e-16
## alternative hypothesis: true location shift is not equal to 0

Interpretacion

Dado que p-evalue <0.05, entonces se rechaza la hipotesis nula, es decir,Las distribuciones de BMI No son iguales para personas con y sin diabetes. en otras palabras, si hay diferencia significativa en los niveles de BMI entre los dos grupo.

Grafico de dispersion

Finalmente realizamos un grafico de dispersion para ver graficamente la distribucion de estos datos

#install.packages(ggplot2)
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.4.3
ggplot(dt, aes(x = BMI, y = factor(Outcome), color = factor(Outcome))) +
  geom_jitter(height = 0.2, alpha = 0.6, size = 2) +
  scale_color_manual(values = c("blue", "green"),
                     name = "Diabetes",
                     labels = c("No", "Si")) +
  labs(title = "Dispersion de BMI segun Diagnostico de Diabetes",
       x = "Indice de Masa Corporal (BMI)",
       y = "Diagnostico de Diabetes (Outcome)") +
  theme_minimal()

Conclusion

Dadas los conclusiones al aplicar la prueba Wilcoxon y ahora observando los datos podemos concluir que las personas con diabetes en esta base de datos tienden a tener índices de masa corporal más elevados. por tanto, se acepta a hipotesis alterna pues hay diferencia en los valores de BMI según el diagnóstico de diabetes.