rm(list=ls(all=TRUE)) #########
library(readxl)
endocrino = read_excel("C:/Users/NB DELL/Desktop/Diseño de Experimentos.Maestría/endocrino.xlsx")
## Con View(endocrino)### Solo para observar las distintas variables que existen.
EJERCICIO INTEGRADOR Problema El archivo de la base de datos “endocrino.xlsx”, se muestran parte de las variables medidas en un estudio transversal realizado, diseñado originalmente con el objetivo de estimar las prevalencias de diabetes mellitus (DM) en la población de Telde (Gran Canaria), así como para identificar los factores asociados con aquella. En el estudio se incluyeron 1030 sujetos con edades comprendidas entre los 30 y 82 años, que respondieron a un cuestionario diseñado para obtener información sobre la edad, sexo, historia personal y familiar de diabetes mellitus y estilos de vida. Se realizaron mediciones antropométricas y de presión arterial. Se tomaron muestras de sangre sobre las que se obtuvieron diversas mediciones (glucemia, lípidos, marcadores de inflamación, hemostasia, etc). Página para descargar datos https://estadistica-dma.ulpgc.es/doctoMed Aclaración: TAS: Presión arterial Sistólica; TAD: Presión arterial Diastólica; HTA_conocida: Padece de Hipertensión arterial; A_DIAB: Padece Diabetes tipo A; STATIN: Consume Estanina (medicamento para bajar colesterol y triglicéridos); OBCENT_ATP: Obesidad Central. CINTURA Y CADERA: perímetro en cm. Actividad: a) Realizar un resumen numérico de las variables, indicando de que tipo son.
telde = endocrino[,c("TAS","TAD","HTA_conocida","A_DIAB","STATIN","OBCENT_ATP","CINTURA","CADERA")]
str(telde)
## tibble [1,030 × 8] (S3: tbl_df/tbl/data.frame)
## $ TAS : num [1:1030] 125 120 150 155 130 110 120 110 130 120 ...
## $ TAD : num [1:1030] 80 80 100 100 90 70 70 70 80 80 ...
## $ HTA_conocida: num [1:1030] 1 0 0 0 0 0 0 0 0 0 ...
## $ A_DIAB : num [1:1030] 1 0 1 0 1 1 1 0 0 1 ...
## $ STATIN : num [1:1030] 1 0 0 0 0 0 0 1 0 0 ...
## $ OBCENT_ATP : num [1:1030] 1 0 1 1 1 1 0 1 1 1 ...
## $ CINTURA : num [1:1030] 104 86 116 104 130 108 100 114 105 109 ...
## $ CADERA : num [1:1030] 102 89 107 103 122 ...
## Factorización
telde$HTA_conocida <- factor(telde$HTA_conocida,labels=c("No padece","Sí padece"))
telde$A_DIAB <- factor(telde$A_DIAB,labels=c("No padece","Sí padece"))
telde$STATIN <- factor(telde$STATIN,labels=c("No consume","Sí consume"))
telde$OBCENT_ATP <-factor(telde$OBCENT_ATP,labels=c("No","Sí"))
summary(telde) ## Aquí ya visualizamos las variables numéricas y categóricas
## TAS TAD HTA_conocida A_DIAB
## Min. : 70.0 Min. : 50.00 No padece:821 No padece:616
## 1st Qu.:110.0 1st Qu.: 70.00 Sí padece:209 Sí padece:414
## Median :120.0 Median : 70.00
## Mean :118.7 Mean : 73.34
## 3rd Qu.:130.0 3rd Qu.: 80.00
## Max. :190.0 Max. :120.00
##
## STATIN OBCENT_ATP CINTURA CADERA
## No consume:878 No:439 Min. : 61.00 Min. : 75.0
## Sí consume:152 Sí:591 1st Qu.: 88.00 1st Qu.: 97.0
## Median : 97.00 Median :103.0
## Mean : 96.81 Mean :104.3
## 3rd Qu.:105.00 3rd Qu.:110.0
## Max. :145.00 Max. :150.0
## NA's :1 NA's :1
tabla_HTA <- xtabs(~ HTA_conocida, data = telde);
barplot(tabla_HTA, xlab = "Hipertensión arterial", ylab = "Frecuencia", main = "Distribución de pacientes según padecimiento o no de hipertensión", col = "orange")
tabla_Adiab <- xtabs(~ A_DIAB, data = telde);
barplot(tabla_Adiab, xlab = "Padece Diabetes tipo A", ylab = "Frecuencia", main = "Distribución de pacientes según padecimiento o no de Padece Diabetes tipo A", col = "blue")
summary(telde$TAS)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 70.0 110.0 120.0 118.7 130.0 190.0
boxplot(telde$TAS, las = 1, ylab = "Presión arterial Sistólica", main = "Distribución de la Presión arterial Sistólica", col = "red")
tabla_HTA_DIA <- xtabs(~ HTA_conocida+A_DIAB, data = telde)
tabla_HTA_DIA
## A_DIAB
## HTA_conocida No padece Sí padece
## No padece 487 334
## Sí padece 129 80
barplot(tabla_HTA_DIA, xlab = "Hipertensión Arterial", beside=T, col = c("brown","orange"), ylim = c(0,600))
legend(5,600,legend = c("No Padece","Sí padece"),fill = c("brown","orange"), title = "Diabetes Tipo A",title.adj = 0.5)
boxplot(telde$TAS ~ telde$HTA_conocida)
HTA_si <- telde[telde$HTA_conocida=="Sí padece","TAS"]
HTA_no <- telde[telde$HTA_conocida=="No padece","TAS"]
Seleccionar el análisis Inferencial que corresponda para una
variable cuantitativa y una cualitatitativa. Aquí utilizaremos las
variables TAS y HTA_conocida para ver si
existe diferencia significativa entre la Presión arterial Sistólica
media según padecimiento o no de Hipertensión arterial. Analizamos la
normalidad del TAS por cada categoría de la variable HTA_conocida. \(H_0:\) El TAS tiene distribución normal
según HTA_conocida \(H_1:\) El TAS no
tiene distribución normal según HTA_conocida Como los p value son
inferiores a 0.05, rechazamos la normalidad de los datos. Por tanto,
recurrimos a un contraste no paramétrico. , usaremos la prueba de
Wilcoxon para dos muestras independientes. \(H_0:\) La mediana de TAS en el grupo de
pacientes con Hipertensión arterial es igual a la del grupo sin
Hipertensión arterial \(H_1:\) La
mediana de TAS en el grupo de pacientes con Hipertensión arterial es
diferente a la del grupo sin Hipertensión arterial Como el p value es
prácticamente cero, tenemos evidencia estadística para concluir que las
medianas de TAS entre los pacientes que padecen o no de hipertensión
arterial son diferentes. HTA_si <- telde[telde\(HTA_conocida=="Sí
padece","TAS"] HTA_no <-
telde[telde\)HTA_conocida==“No padece”,“TAS”]
wilcox.test(TAS~HTA_conocida, data = endocrino) concluimos que no existe
igualdad de medias según las evidencias de los datos
analizados.
Seleccionar con R, una submuestra de tamaño n=100, con algunas de las variables del archivo original.
set.seed(12345)
index <- sample(1:nrow(telde),100,replace = F)
index
## [1] 142 51 720 730 664 826 605 587 352 216 770 86 75 38 615 862 778 465
## [19] 928 40 935 806 286 257 972 724 840 506 12 771 393 14 653 704 148 618
## [37] 887 528 592 62 480 354 500 635 572 873 800 537 36 744 971 166 649 901
## [55] 975 723 145 895 974 677 570 106 451 976 13 735 579 433 586 56 363 889
## [73] 504 91 628 546 940 675 621 726 947 567 234 255 535 863 154 439 903 399
## [91] 741 46 471 764 908 90 124 472 867 517
endocrino_n100 <- subset(endocrino, ID %in% index, select = c("TAS","HTA_conocida","TAD"))
endocrino_n100
## # A tibble: 80 × 3
## TAS HTA_conocida TAD
## <dbl> <dbl> <dbl>
## 1 130 0 80
## 2 120 0 70
## 3 120 1 90
## 4 100 0 70
## 5 100 0 60
## 6 120 0 80
## 7 145 0 75
## 8 140 0 90
## 9 112. 0 60
## 10 115 1 75
## # ℹ 70 more rows