CLASE 11 MAYO

Author

Yomara Ruiz

Encuesta Nacional de Salud y Nutrición 2018

Este presente trabajo fue desarrollado en base a la información del INEC

Cargar las librerías necesarias

library(dplyr) # Para manipular los datos library(ggplot2) # Para crear gráficos library(“foreign”) #Cargas datos .dta library(“msm”) library(“car”) require(plotrix) library(“plotrix”)

Cambiar directorio de trabajo

setwd(“C:/Users/yomara.ruiz/Desktop/CLASE 11 MAYO”)

options(repos = c(CRAN = "https://cloud.r-project.org"))
install.packages("foreign")
Installing package into 'C:/Users/yomara.ruiz/AppData/Local/R/win-library/4.5'
(as 'lib' is unspecified)
package 'foreign' successfully unpacked and MD5 sums checked

The downloaded binary packages are in
    C:\Users\yomara.ruiz\AppData\Local\Temp\RtmpqULFVl\downloaded_packages
library(foreign)
library(haven)
data <- read_dta("Data1_R.dta")
View(data)
head(data)
# A tibble: 6 × 50
  area       empleo          region   edad t_hijos nac_vivo_murieron mortinato_2
  <dbl+lbl>  <dbl+lbl>       <dbl+l> <dbl>   <dbl> <dbl+lbl>         <dbl+lbl>  
1 1 [Urbano] 1 [Trabajó al… 1 [Sie…    19       1 0 [No]            0 [No]     
2 1 [Urbano] 0 [No trabajó] 1 [Sie…    23       1 0 [No]            0 [No]     
3 1 [Urbano] 1 [Trabajó al… 1 [Sie…    38       5 0 [No]            0 [No]     
4 1 [Urbano] 0 [No trabajó] 1 [Sie…    18       1 0 [No]            0 [No]     
5 1 [Urbano] 0 [No trabajó] 1 [Sie…    21       1 0 [No]            0 [No]     
6 1 [Urbano] 1 [Trabajó al… 1 [Sie…    22       1 0 [No]            0 [No]     
# ℹ 43 more variables: depresion_pp <dbl+lbl>, intensidad_dpp <dbl+lbl>,
#   etnia <dbl+lbl>, f2_s2_216_1 <dbl+lbl>, f2_s2_216_2 <dbl>,
#   f2_s2_218_1_a <dbl+lbl>, tiempo_dpp <dbl+lbl>, f2_s5_504a_1 <dbl+lbl>,
#   f2_s5_504b_1 <dbl+lbl>, f2_s5_504c_1 <dbl+lbl>, f2_s5_504d_1 <dbl+lbl>,
#   f2_s5_504e_1 <dbl+lbl>, f2_s5_504f_1 <dbl+lbl>, f2_s5_504g_1 <dbl+lbl>,
#   f2_s5_504h_1 <dbl+lbl>, f2_s5_504i_1 <dbl+lbl>, f2_s5_504j_1 <dbl+lbl>,
#   f2_s5_504k_1 <dbl+lbl>, est_civil <dbl+lbl>, q_usted <dbl+lbl>, …
media <- mean(data$ingrl, na.rm = TRUE)  # Calcula la media
print(media)
[1] 162.6633

En este caso, se analiza que el promedio de las mujeres en 2018 fue de $162.66, mismo que está por debajo del SBU.

desviacion <- sd(data$ingrl, na.rm = TRUE)  # Calcula la desviación estándar
print(desviacion)
[1] 329.8832

La desv. estándar de este ejemplo es de 329.88

n <- length(data$ingrl)  # Número de observaciones
print(n)
[1] 16451
summary(data$ingrl)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
    0.0     0.0     0.0   162.7   200.0  3000.0 
error_estandar <- desviacion / sqrt(n)
print(error_estandar)
[1] 2.571959

El error estándar se encuentra en 2.57

z <- qnorm(0.975)  # Z-score para un intervalo de confianza del 95%
z2<- qnorm(0.95)   # Z-score para un intervalo de confianza del 90%
z3<- qnorm(0.995)   # Z-score para un intervalo de confianza del 99%
margen_error <- z * error_estandar  # Margen de error
print(margen_error )
[1] 5.040948
IC_inferior <- media - margen_error
print(IC_inferior)
[1] 157.6223
IC_superior <- media + margen_error
print(IC_superior)
[1] 167.7042
cat("El intervalo de confianza para la media de 'ingrl' es: [", IC_inferior, ",", IC_superior, "]\n")
El intervalo de confianza para la media de 'ingrl' es: [ 157.6223 , 167.7042 ]
intervalo95<-cbind(IC_inferior,media,IC_superior);intervalo95 #Para transformar a matriz
     IC_inferior    media IC_superior
[1,]    157.6223 162.6633    167.7042
colnames(intervalo95)<-c("IC_low","media","IC_high");intervalo95 #Para cambiar nombres más cortos de columnas
       IC_low    media  IC_high
[1,] 157.6223 162.6633 167.7042

FORMA SIMPLICADA DE ENCONTRAR INTERVALOS

media_test <- t.test(data$ingrl, conf.level = 0.95)
print(media_test$conf.int)
[1] 157.6220 167.7046
attr(,"conf.level")
[1] 0.95

Plotear los Intervalos de Confianza en un gráfico”

labels<-c("CI_95")
names(labels)<-labels
labelsre1<-round(c(media),2) 
labelsre2<-round(c(IC_inferior),2) 
labelsre3<-round(c(IC_superior),2) 
names(labelsre1)<-labelsre1

xre1<-c(media)
y1<-(4)
lre1<-c(IC_inferior)
ure1<-c(IC_superior)
options(repos = c(CRAN = "https://cloud.r-project.org"))
install.packages("plotrix")
Installing package into 'C:/Users/yomara.ruiz/AppData/Local/R/win-library/4.5'
(as 'lib' is unspecified)
package 'plotrix' successfully unpacked and MD5 sums checked

The downloaded binary packages are in
    C:\Users\yomara.ruiz\AppData\Local\Temp\RtmpqULFVl\downloaded_packages
library(plotrix)
plotCI(xre1,y1, ui=ure1,li=lre1,col="#898989",scol="#898989",
       err="x",
       axes=FALSE,   ## disable axes (including tick labels)
       pch=21,
       pt.bg=16,
       cex = 0.30,
       slty = 1,
       lwd=1,
       xlab="",
       ylab="",
       ylim=c(1,7),
       xlim=c(154,169),   ## suppress x-axis label
       main="Intervalo de Confianza para el Ingreso Promedio",
       cex.main=0.85,
       font.main = 1)
abline(v = xre1, col = "red",lty = 2)
#text(-200,"Media",col="blue")
axis(side=1,cex.axis=0.65)         ## add default y-axis (ticks+labels)
axis(side=2,at=4,  ## add custom x-axis
     labels= labels,cex.axis=0.30)
box(bty="l")         ## add box
text(xre1, y1+0.03, labelsre1, cex = 0.65, pos= 3)
text(lre1, y1+0.03, labelsre2, cex = 0.65, pos= 3)
text(ure1, y1+0.03, labelsre3, cex = 0.65, pos= 3)

Intervalo de Confianza para la proporción de la variable ‘depresion_pp’ post parto

install.packages("haven")
Warning: package 'haven' is in use and will not be installed
library(haven)
p <- sum(as_factor(data$depresion_pp) == "Si", na.rm = TRUE) / sum(!is.na(data$depresion_pp))
print(p)
[1] 0.2202298

En el caso de la muestra de las mujeres ecuatorianas en 2018, el 22,02% sufrió de depresión postparto, y el 77,98% no sufrió depresión.

n <- length(data$depresion_pp)
print (n)
[1] 16451

Calcular el error estándar

error_estandarp <- sqrt((p * (1 - p)) / n)
print(error_estandarp)
[1] 0.003230912

El error estándar de la proporción de las mujeres con depresión post parto es de 0.0032

Calcular el margen de error

margen_errorp <- z * error_estandarp
print(margen_errorp)
[1] 0.006332472

El margen de error de la proporción de las mujeres ecuatorianas con depresión postparto es de 0.0063

Calcula límite del intervalo de confianza inferior

IC_inferiorp <- p - margen_errorp
print(IC_inferiorp)
[1] 0.2138973

Calcula límite del intervalo de confianza superior

IC_superiorp <- p + margen_errorp
print(IC_superiorp <- p + margen_errorp)
[1] 0.2265622
cat("El intervalo de confianza para la media de 'mujeres con depresión post partol' es: [", IC_inferiorp, ",", IC_superiorp, "]")
El intervalo de confianza para la media de 'mujeres con depresión post partol' es: [ 0.2138973 , 0.2265622 ]
intervalo95p<-cbind(IC_inferiorp,p,IC_superiorp);intervalo95p #Para transformar a matriz
     IC_inferiorp         p IC_superiorp
[1,]    0.2138973 0.2202298    0.2265622
colnames(intervalo95p)<-c("IC_low","p","IC_high");intervalo95p #Para cambiar nombres más cortos de columnas
        IC_low         p   IC_high
[1,] 0.2138973 0.2202298 0.2265622

Una forma más simplificada de calcular un intervalo de confianza para proporciones

library(haven)
depresion_factor <- as_factor(data$depresion_pp)

prop_test <- prop.test(
  sum(depresion_factor == "Si", na.rm = TRUE),  # éxitos
  sum(!is.na(depresion_factor)),                # total válido
  conf.level = 0.95
)
print(prop_test$conf.int)
[1] 0.2139329 0.2266579
attr(,"conf.level")
[1] 0.95

Prueba de hipótesis de Medias

Supongamos que queremos realizar una prueba de hipótesis para la media de ‘ingrl’

H0: El ingreso promedio poblacional es igual a $450

HA: El ingreso promedio poblacional es diferente a $450

Realizar una prueba t para una sola muestra

t_prueba <- t.test(data$ingrl, mu = 450, conf.level = 0.95)
print(t_prueba)

    One Sample t-test

data:  data$ingrl
t = -111.72, df = 16450, p-value < 2.2e-16
alternative hypothesis: true mean is not equal to 450
95 percent confidence interval:
 157.6220 167.7046
sample estimates:
mean of x 
 162.6633 

Análisis: p valor significativo, por lo tanto, rechazo la hipótesis nula y no rechazo la hipótesis alternativa, es decir, acepto la hipótesis alternativa, dado que, el ingreso promedio de las mujeres de Ecuador es de $162.66.

Si el valor p es menor a 0.05, rechazamos la hipótesis nula

if (t_prueba$p.value < 0.05) {
  cat("Rechazamos la hipótesis nula: Entonces tenemos evidencia de que la media de 'ingrl' es diferente de 450.\n")
} else {
  cat("No rechazamos la hipótesis nula: Entonces tenemos evidencia de que la media de 'ingrl' es igual a 450.\n")
}
Rechazamos la hipótesis nula: Entonces tenemos evidencia de que la media de 'ingrl' es diferente de 450.

Supongamos que queremos realizar una prueba de hipótesis para la media de ‘ingrl’

H0: El ingreso promedio poblacional es mayor e igual a $450

HA: El ingreso promedio poblacional es menor a $450

Recordar que la HA nunca contiene los signos “=” , “≤” o “≥”.

t_prueba2 <- t.test(data$ingrl, mu = 450, alternative = "less", conf.level = 0.95)
print(t_prueba2)

    One Sample t-test

data:  data$ingrl
t = -111.72, df = 16450, p-value < 2.2e-16
alternative hypothesis: true mean is less than 450
95 percent confidence interval:
    -Inf 166.894
sample estimates:
mean of x 
 162.6633 

Análisis: p valor significativo, por lo tanto, rechazo la hipótesis nula y no rechazo la hipótesis alternativa

Si el valor p es menor a 0.05, rechazamos la hipótesis nula

if (t_prueba$p.value < 0.05) {
  cat("Rechazamos la hipótesis nula: Entonces tenemos evidencia de que la media poblacional de 'ingrl' es menor a 450.\n")
} else {
  cat("No rechazamos la hipótesis nula: Entonces tenemos evidencia de que la media poblacional de 'ingrl' es mayor e igual a 450.\n")
}
Rechazamos la hipótesis nula: Entonces tenemos evidencia de que la media poblacional de 'ingrl' es menor a 450.

Prueba de hipótesis de proporciones

Supongamos que queremos realizar una prueba de hipótesis para proporción de ‘depresion_pp’

H0: La proporción poblacional de las mujeres con depresiión postparto es igual a 0.10

HA: La proporción poblacional de las mujeres con depresión postparto es diferente a 0.10

Recordar que la HA nunca contiene los signos “=” , “≤” o “≥”.

library(haven)
depresion <- as_factor(data$depresion_pp)
prop_test <- prop.test(
  sum(depresion == "Si", na.rm = TRUE),              # cantidad de "Si"
  sum(!is.na(depresion)),                            # total válido
  p = 0.10,                                          # proporción esperada
  conf.level = 0.95
)
print(prop_test)

    1-sample proportions test with continuity correction

data:  sum(depresion == "Si", na.rm = TRUE) out of sum(!is.na(depresion)), null probability 0.1
X-squared = 2640.9, df = 1, p-value < 2.2e-16
alternative hypothesis: true p is not equal to 0.1
95 percent confidence interval:
 0.2139329 0.2266579
sample estimates:
        p 
0.2202298 

Análisis: dado que, p-value es estadísticamente significativo, tengo evidencia para rechazar la H0, es decir, que la proporción de mujeres con depresión postparto es diferente de 0.10, en este caso es de 0.22

if (prop_test$p.value < 0.05) {
  cat("Rechazamos la hipótesis nula: Entonces tenemos evidencia de que la proporción de 'depresion_pp' es diferente a 0.10.\n")
} else {
  cat("No rechazamos la hipótesis nula: Entonces tenemos evidencia de que la proporción de 'depresion_pp' es igual a 0.10.\n")
}
Rechazamos la hipótesis nula: Entonces tenemos evidencia de que la proporción de 'depresion_pp' es diferente a 0.10.

REVISIÓN DE LITERATURA

De acuerdo a (Blaesi and Saka 2025) menciona que las mujeres en España no sufren depresión, porque, hay políticas de salud eficientes.

Referencias

Blaesi, Aron H., and Nannaji Saka. 2025. “Gastroretentive Fibrous Dosage Forms for Prolonged Delivery of Sparingly-Soluble Tyrosine Kinase Inhibitors. Part 2: Experimental Validation of the Models of Expansion, Post-Expansion Mechanical Strength, and Drug Release.” International Journal of Pharmaceutics 674 (April): 124361. https://doi.org/10.1016/j.ijpharm.2024.124361.