Actividad 2 Métodos y simulación estadística: Problema 3

1. Teorema del Límite Central

El Teorema del Límite Central es uno de los más importantes en la inferencia estadística y habla sobre la convergencia de los estimadores como la proporción muestral a la distribución normal. Algunos autores afirman que esta aproximación es bastante buena a partir del umbral n>30.

2. Desarrollo

a) Simulación de una población de n=1000

Para simular una población de 1000 plantas, donde el 50% de ellas están enfermas, podemos usar una distribución binomial. En R, esto se vería así:

set.seed(123) # Para reproducibilidad
lote <- rbinom(1000, 1, 0.5) # 1 indica que es una prueba de Bernoulli y 0.5 es la probabilidad de éxito (planta enferma)

b) Función para obtener una muestra aleatoria y calcular el estimador de la proporción muestral

Vamos a crear una función que tome una muestra aleatoria del lote y calcule la proporción muestral \(\hat{p}\):

obtener_muestra <- function(lote, n) {
  muestra <- sample(lote, n, replace = FALSE)
  p_hat <- mean(muestra)
  return(p_hat)
}

c) Repetir el escenario anterior 500 veces

Para repetir el escenario anterior 500 veces, simplemente usamos un bucle:

n <- 500
resultados <- replicate(500, obtener_muestra(lote, n))

# Análisis de los resultados
media <- mean(resultados)
desviacion <- sd(resultados)

media
## [1] 0.493944
desviacion
## [1] 0.01639238
hist(resultados, main="Histograma de proporciones muestrales", xlab="Proporción muestral", breaks=30)

Interpretación:

  1. Media (0.493944):

    • La media de los estimadores de proporción muestral es aproximadamente 0.494. Esto está muy cerca del verdadero valor de la proporción en la población, que es 0.5 (o 50%). Esto indica que, en promedio, nuestro proceso de muestreo está dando resultados que son bastante precisos y cercanos al valor real en la población.
  2. Desviación Estándar (0.01639238):

    • La desviación estándar nos da una idea de cuánta variabilidad hay en los resultados de nuestro estimador de proporción muestral. Una desviación estándar de 0.0164 indica que la mayoría de nuestros estimadores de proporción muestral se encuentran dentro de un rango de ±0.0164 alrededor de la media (0.494). En términos prácticos, esto significa que si tomamos una muestra aleatoria de nuestra población y calculamos la proporción muestral, podemos esperar que, en la mayoría de los casos, nuestro resultado esté entre 0.478 (0.494 - 0.0164) y 0.511 (0.494 + 0.0164).

Estos resultados refuerzan la idea del Teorema del Límite Central. A pesar de la variabilidad inherente en el proceso de muestreo, la media de los estimadores de proporción muestral se acerca al valor real en la población. Además, la desviación estándar nos da una idea de cuánta variabilidad podemos esperar en nuestros resultados, lo que es crucial para la inferencia estadística y la toma de decisiones basada en muestras.

d) Repetir los puntos b y c para diferentes tamaños de muestra

Aquí, simplemente iteramos sobre los diferentes tamaños de muestra y repetimos el proceso:

tamanos_muestra <- c(5, 10, 15, 20, 30, 50, 60, 100, 200, 500)
resultados_list <- list()

for (n in tamanos_muestra) {
  resultados_list[[as.character(n)]] <- replicate(500, obtener_muestra(lote, n))
}

# Pruebas de bondad y ajuste y gráficos
for (n in tamanos_muestra) {
  cat("Resultados para n =", n, "\n")
  print(shapiro.test(resultados_list[[as.character(n)]]))
  qqnorm(resultados_list[[as.character(n)]])
  qqline(resultados_list[[as.character(n)]])
}
## Resultados para n = 5 
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list[[as.character(n)]]
## W = 0.9225, p-value = 2.281e-15

## Resultados para n = 10 
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list[[as.character(n)]]
## W = 0.96565, p-value = 2.017e-09

## Resultados para n = 15 
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list[[as.character(n)]]
## W = 0.97214, p-value = 3.749e-08

## Resultados para n = 20 
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list[[as.character(n)]]
## W = 0.97838, p-value = 9.212e-07

## Resultados para n = 30 
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list[[as.character(n)]]
## W = 0.98452, p-value = 3.642e-05

## Resultados para n = 50 
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list[[as.character(n)]]
## W = 0.98949, p-value = 0.001197

## Resultados para n = 60 
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list[[as.character(n)]]
## W = 0.99039, p-value = 0.002399

## Resultados para n = 100 
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list[[as.character(n)]]
## W = 0.99368, p-value = 0.03499

## Resultados para n = 200 
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list[[as.character(n)]]
## W = 0.99268, p-value = 0.01519

## Resultados para n = 500 
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list[[as.character(n)]]
## W = 0.99617, p-value = 0.2711

Estos resultados provienen de la prueba de Shapiro-Wilk, que es una prueba de bondad de ajuste para evaluar si una muestra proviene de una población con una distribución normal. La prueba se basa en la comparación entre los valores esperados y observados de ciertas estadísticas de orden en la muestra.

Vamos a interpretar los resultados:

Estadístico W: El estadístico W de Shapiro-Wilk varía entre 0 y 1. Un valor de W cercano a 1 sugiere que los datos siguen una distribución normal. Cuanto más pequeño sea el valor de W, más evidencia hay contra la hipótesis nula de normalidad.

Valor p: El valor p es la probabilidad de observar un valor de W tan extremo como el que se obtuvo, asumiendo que la población es normal. Si el valor p es pequeño (generalmente se utiliza un umbral de 0.05), se rechaza la hipótesis nula y se concluye que los datos no siguen una distribución normal.

Interpretación de los resultados:

  1. n = 5: W = 0.9225, p-value = 2.281e-15
    • El valor p es extremadamente pequeño, lo que indica que los datos no siguen una distribución normal. Esto es esperado para un tamaño de muestra tan pequeño.
  2. n = 10: W = 0.96565, p-value = 2.017e-09
    • Aunque W está más cerca de 1, el valor p sigue siendo muy pequeño, lo que indica que los datos no son normales.
  3. n = 15: W = 0.97214, p-value = 3.749e-08
    • La tendencia continúa: a medida que aumenta el tamaño de la muestra, W se acerca a 1, pero el valor p sigue siendo significativamente pequeño.
  4. n = 20: W = 0.97838, p-value = 9.212e-07
    • Similar a los anteriores.
  5. n = 30: W = 0.98452, p-value = 3.642e-05
    • Aunque W está cerca de 1, el valor p todavía indica que los datos no son normales.
  6. n = 50: W = 0.98949, p-value = 0.001197
    • El valor p está aumentando, pero todavía es menor que 0.05.
  7. n = 60: W = 0.99039, p-value = 0.002399
    • Similar al anterior.
  8. n = 100: W = 0.99368, p-value = 0.03499
    • Aquí, el valor p está justo por encima del umbral típico de 0.05, lo que sugiere que los datos podrían considerarse aproximadamente normales.
  9. n = 200: W = 0.99268, p-value = 0.01519
    • Aunque W es alto, el valor p ha disminuido nuevamente, lo que indica falta de normalidad.
  10. n = 500: W = 0.99617, p-value = 0.2711
  • Aquí, tanto W como el valor p sugieren que los datos son aproximadamente normales.

A medida que el tamaño de la muestra aumenta, la distribución del estimador de proporción muestral se acerca más a una distribución normal, como lo sugiere el Teorema del Límite Central. Sin embargo, es importante notar que, incluso para tamaños de muestra más grandes, no siempre se garantiza la normalidad, y siempre es esencial realizar pruebas y visualizaciones para confirmar las suposiciones.

e) Repetir la simulación para 10% y 90% de plantas enfermas

Simplemente se cambia la probabilidad en la función rbinom y repite los pasos anteriores:

# Para 10%
lote_10 <- rbinom(1000, 1, 0.1)

# Para 90%
lote_90 <- rbinom(1000, 1, 0.9)

Simulación para Diferentes Tamaños de Muestra: Vamos a repetir el proceso de muestreo para diferentes tamaños de muestra y almacenar los resultados.

tamanos_muestra <- c(5, 10, 15, 20, 30, 50, 60, 100, 200, 500)
resultados_list_10 <- list()
resultados_list_90 <- list()

for (n in tamanos_muestra) {
  resultados_list_10[[as.character(n)]] <- replicate(500, obtener_muestra(lote_10, n))
  resultados_list_90[[as.character(n)]] <- replicate(500, obtener_muestra(lote_90, n))
}

Análisis de los Resultados: Para cada tamaño de muestra, calculamos la media y la desviación estándar de los estimadores de proporción muestral y realizamos pruebas de normalidad.

for (n in tamanos_muestra) {
  cat("Resultados para lote_10 y n =", n, "\n")
  print(mean(resultados_list_10[[as.character(n)]]))
  print(sd(resultados_list_10[[as.character(n)]]))
  print(shapiro.test(resultados_list_10[[as.character(n)]]))

  cat("Resultados para lote_90 y n =", n, "\n")
  print(mean(resultados_list_90[[as.character(n)]]))
  print(sd(resultados_list_90[[as.character(n)]]))
  print(shapiro.test(resultados_list_90[[as.character(n)]]))
}
## Resultados para lote_10 y n = 5 
## [1] 0.108
## [1] 0.1376004
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list_10[[as.character(n)]]
## W = 0.71859, p-value < 2.2e-16
## 
## Resultados para lote_90 y n = 5 
## [1] 0.9036
## [1] 0.1262494
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list_90[[as.character(n)]]
## W = 0.70488, p-value < 2.2e-16
## 
## Resultados para lote_10 y n = 10 
## [1] 0.1092
## [1] 0.09927271
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list_10[[as.character(n)]]
## W = 0.85522, p-value < 2.2e-16
## 
## Resultados para lote_90 y n = 10 
## [1] 0.9028
## [1] 0.08926419
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list_90[[as.character(n)]]
## W = 0.84097, p-value < 2.2e-16
## 
## Resultados para lote_10 y n = 15 
## [1] 0.0992
## [1] 0.07799126
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list_10[[as.character(n)]]
## W = 0.8905, p-value < 2.2e-16
## 
## Resultados para lote_90 y n = 15 
## [1] 0.9026667
## [1] 0.073115
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list_90[[as.character(n)]]
## W = 0.89836, p-value < 2.2e-16
## 
## Resultados para lote_10 y n = 20 
## [1] 0.1077
## [1] 0.07068028
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list_10[[as.character(n)]]
## W = 0.93361, p-value = 4.115e-14
## 
## Resultados para lote_90 y n = 20 
## [1] 0.8997
## [1] 0.06444545
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list_90[[as.character(n)]]
## W = 0.9195, p-value = 1.097e-15
## 
## Resultados para lote_10 y n = 30 
## [1] 0.1011333
## [1] 0.05401745
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list_10[[as.character(n)]]
## W = 0.95661, p-value = 5.824e-11
## 
## Resultados para lote_90 y n = 30 
## [1] 0.9012
## [1] 0.05111433
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list_90[[as.character(n)]]
## W = 0.94776, p-value = 2.779e-12
## 
## Resultados para lote_10 y n = 50 
## [1] 0.103
## [1] 0.04127963
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list_10[[as.character(n)]]
## W = 0.97833, p-value = 8.957e-07
## 
## Resultados para lote_90 y n = 50 
## [1] 0.898
## [1] 0.03940438
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list_90[[as.character(n)]]
## W = 0.96892, p-value = 8.395e-09
## 
## Resultados para lote_10 y n = 60 
## [1] 0.1019333
## [1] 0.0374932
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list_10[[as.character(n)]]
## W = 0.97298, p-value = 5.615e-08
## 
## Resultados para lote_90 y n = 60 
## [1] 0.8989333
## [1] 0.03706524
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list_90[[as.character(n)]]
## W = 0.9745, p-value = 1.195e-07
## 
## Resultados para lote_10 y n = 100 
## [1] 0.10146
## [1] 0.02958071
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list_10[[as.character(n)]]
## W = 0.98364, p-value = 2.07e-05
## 
## Resultados para lote_90 y n = 100 
## [1] 0.89908
## [1] 0.02879604
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list_90[[as.character(n)]]
## W = 0.98525, p-value = 5.888e-05
## 
## Resultados para lote_10 y n = 200 
## [1] 0.10305
## [1] 0.01766839
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list_10[[as.character(n)]]
## W = 0.99161, p-value = 0.006317
## 
## Resultados para lote_90 y n = 200 
## [1] 0.89871
## [1] 0.01848159
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list_90[[as.character(n)]]
## W = 0.98928, p-value = 0.001028
## 
## Resultados para lote_10 y n = 500 
## [1] 0.100992
## [1] 0.009567393
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list_10[[as.character(n)]]
## W = 0.99459, p-value = 0.07502
## 
## Resultados para lote_90 y n = 500 
## [1] 0.898776
## [1] 0.009090385
## 
##  Shapiro-Wilk normality test
## 
## data:  resultados_list_90[[as.character(n)]]
## W = 0.99275, p-value = 0.01604

Visualización:

Podemos visualizar la distribución de los estimadores de proporción muestral para cada tamaño de muestra usando histogramas o gráficos de densidad.

for (n in tamanos_muestra) {
  hist(resultados_list_10[[as.character(n)]], main=paste("Histograma para 10% y n =", n), xlab="Proporción muestral", col="lightblue", border="black")
  hist(resultados_list_90[[as.character(n)]], main=paste("Histograma para 90% y n =", n), xlab="Proporción muestral", col="lightgreen", border="black")
}

Interpretación:

Media:

Para el lote con 10% de plantas enfermas, las medias están cerca del valor real (0.10 o 10%). Esto indica que el proceso de muestreo es preciso en promedio. Para el lote con 90% de plantas enfermas, las medias también están cerca del valor real (0.90 o 90%).

Desviación Estándar:

La desviación estándar disminuye a medida que aumenta el tamaño de la muestra. Esto es coherente con la teoría, ya que se espera que las estimaciones sean más precisas (menos variables) con muestras más grandes. Prueba de Shapiro-Wilk:

Para ambos lotes y para todos los tamaños de muestra, el valor p es extremadamente pequeño, lo que indica que las proporciones muestrales no siguen una distribución normal. Sin embargo, es importante notar que a medida que el tamaño de la muestra aumenta, el valor W se acerca a 1, lo que sugiere que la distribución de las proporciones muestrales se acerca más a una normal. Esto es coherente con el Teorema del Límite Central.

3. Conclusión

Teorema del Límite Central: - Los resultados obtenidos refuerzan la validez del Teorema del Límite Central (TLC). Independientemente de la proporción de plantas enfermas en la población (ya sea 10%, 50% o 90%), observamos que la distribución de la proporción muestral se acerca a una distribución normal a medida que el tamaño de la muestra aumenta. Esto es coherente con el TLC, que establece que la distribución de la media muestral se acercará a una normal a medida que el tamaño de la muestra crezca, independientemente de la distribución de la población.

Precisión de las Estimaciones: - Las medias de las proporciones muestrales para todos los lotes estuvieron consistentemente cerca de las proporciones reales en la población. Esto indica que el proceso de muestreo es, en promedio, preciso y confiable.

Variabilidad de las Estimaciones: - La variabilidad de las proporciones muestrales, medida por la desviación estándar, disminuyó a medida que el tamaño de la muestra aumentó. Esto sugiere que las estimaciones son más precisas y confiables con tamaños de muestra más grandes.

Normalidad de las Estimaciones: - Aunque las proporciones muestrales no siguieron una distribución normal para tamaños de muestra pequeños, observamos una tendencia clara: a medida que el tamaño de la muestra aumentaba, la distribución de las proporciones muestrales se acercaba más a una normal. Esto sugiere que, para tamaños de muestra más grandes, es razonable usar métodos estadísticos que asuman normalidad.

Escenarios Extremos: - Incluso en escenarios extremos, como lotes con solo 10% o 90% de plantas enfermas, las conclusiones anteriores se mantuvieron. Esto destaca la robustez del TLC y la importancia de tener tamaños de muestra adecuados para la inferencia estadística.

Importancia de la Simulación: - Las simulaciones permitieron visualizar y comprender mejor el comportamiento de las proporciones muestrales y cómo se relacionan con la población. Estas simulaciones son herramientas poderosas para enseñar y comprender conceptos estadísticos complejos.

En resumen, este análisis ha demostrado la importancia y validez del Teorema del Límite Central en la práctica. También ha subrayado la necesidad de considerar el tamaño de la muestra al hacer inferencias estadísticas, especialmente en contextos donde la precisión es crucial.