Introducción.

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.

A continuación se describen los siguientes pasos para su verificación:

Paso 1.

Realice una simulación en la cual genere una población de n=1000 (Lote), donde el porcentaje de individuos (supongamos plantas) enfermas sea del 50%.

set.seed(123) # Establezco la semilla aleatoria para reproducibilidad

Lote<- 1000 #El tamaño de la población definida
enfermos<- floor(Lote*0.5) # de plantas enfermas
sanos <- Lote - enfermos # de plantas sanas
Poblacion <- c(rep(1, enfermos), rep(0, sanos)) #Represento a la población en este vector

lote_total <- sample(Poblacion) #Mezcla la población de manera aleatoria

head(lote_total, 20) # Miro el resultado de los primeros 20 registros para verificar que estén mezclados
##  [1] 1 1 1 0 1 0 0 1 1 1 1 1 1 0 0 0 0 0 1 0

Paso 2.

Genere una función que permita:

  • Obtener una muestra aleatoria de la población y

  • Calcule el estimador de la proporción muestral pˆ para un tamaño de muestra dado n.

muestra_y_proporcion<- function(Poblacion, n){
  
muestra<- sample(Poblacion, size = n)  # Obtengo una muestra aleatoria de la población
prop_muestral <-sum(muestra==1)/ n # Calculo el estimador de la proporción muestral
return(prop_muestral)

}
tamaño_muestra<- 1000
proporcion<- muestra_y_proporcion(lote_total, tamaño_muestra)
cat("Estimación de la proporción muestral (p^):", proporcion, "\n")
## Estimación de la proporción muestral (p^): 0.5

Con los resultados anteriores verificamos la proporción que habíamos definido del 50% enfermos y 50% sanos, ejecutando el mismo ejemplo con 100 muestras:

tamaño_muestra<- 100
proporcion<- muestra_y_proporcion(lote_total, tamaño_muestra)
cat("Estimación de la proporción muestral (p^) con n=100:", proporcion, "\n")
## Estimación de la proporción muestral (p^) con n=100: 0.49

La estimación de la proporción muestral tomando una muestra aleatoria de 100 es muy cercana al parámetro de la población.

Paso 3.

Repita el escenario anterior (paso 2) n=500 veces y analice los resultados en cuanto al comportamiento de los 500 resultados del estimador pˆ. ¿Qué tan simétricos o sesgados son los resultados obtenidos? y ¿qué se puede observar en cuanto a la variabilidad?. Realice en su informe un comentario sobre los resultados obtenidos.

tamaño_muestra<- 100 #Defino tamaños de muestra de 100
repeticiones <- 500  # Número de repeticiones solicitadas
estimaciones_proporcion <- numeric(repeticiones) # Vector para almacenar las estimaciones de la proporción.

for (i in 1:repeticiones) {
  estimaciones_proporcion[i] <-muestra_y_proporcion(lote_total, tamaño_muestra)
} # Realizo muestreo repetido y registro las estimaciones

Genero estadísticas descriptivas para analizar el comportamiento:

library(e1071)
summary(estimaciones_proporcion)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##  0.3700  0.4700  0.5000  0.5017  0.5400  0.6800
coefasismetria500<-skewness(estimaciones_proporcion)
coefvariacion500<-(sd(estimaciones_proporcion)/mean(estimaciones_proporcion))*100
coefasismetria500
## [1] 0.05942229
coefvariacion500
## [1] 9.29881

La media y la mediana son muy similares y concuerdan con la proporción poblacional, el valor mínimo obtenido en las muestras es de 37% de enfermos y el máximo de 68%. El 50% de las proporciones muestrales se encuentran entre 47% y 54%, están muy ceca a la media.

El coeficiente de asimetría está muy cercano a 0, indicando una distribución aproximadamente normal. El coeficiente de variación en 9,4 indica una pequeña variación de los datos con aproximadamente el 9% de la media.

Y observo mediante histograma:

hist(estimaciones_proporcion, breaks = 20, main = "Histograma de Estimaciones de p^", xlab = "Estimación de p^", col = "#2A9EB8")

qqnorm(estimaciones_proporcion, main ="n=500" ); qqline(estimaciones_proporcion, col="red")

El gráfico de normalidad para diferentes tamaños de muestra, representa una distribución muy cercana a la normalidad.

Paso 4.

Repita los puntos 2 y 3 para tamaños de muestra n==5, 10, 15, 20, 30, 50, 60, 100, 200, 500. Compare los resultados obtenidos para los diferentes tamaños de muestra en cuanto a la normalidad. Utilice pruebas de bondad y ajuste (shapiro wilks :shspiro.test()) y métodos gráficos (gráfico de normalidad: qqnorm()). Comente en su informe los resultados obtenidos

set.seed(123)

resultados_shapiro <- data.frame( # Creo un dataframe para almacenar los resultados
  tamaño_muestra = numeric(0),
  EstadisticoW = numeric(0),
  ValorP = numeric(0),
  CoefAsimetria = numeric(0),  
  CoefVariacion = numeric(0)    
)

analisis_normalidad <- function(n) {
  estimaciones_proporcion <- numeric(repeticiones)
  
  for (i in 1:repeticiones) {
    estimaciones_proporcion[i] <- muestra_y_proporcion(lote_total, n)
  }
  
  shapiro_test_result <- shapiro.test(estimaciones_proporcion)$p.value  # Prueba de Shapiro-Wilk
  
  library(e1071)
  # Sesgo y varianza
  coefasimetrian <- skewness(estimaciones_proporcion)  
  coefvariacionn <- (sd(estimaciones_proporcion) / mean(estimaciones_proporcion)) * 100
  
  # Formateo el valor p con dos decimales redondeados
  shapiro_test_result_formatted <- sprintf("%.2f", shapiro_test_result)
  
  # Agrego los resultados al dataframe
  resultados_shapiro <<- rbind(resultados_shapiro, 
                               data.frame(tamaño_muestra = n,
                                          EstadisticoW = shapiro_test_result,
                                          ValorP = shapiro_test_result_formatted,
                                          CoefAsimetria = coefasimetrian,  
                                          CoefVariacion = coefvariacionn))
   
  qqnorm (estimaciones_proporcion, main=paste("QQ plot para n=", n))
  qqline(estimaciones_proporcion, col="red")
  hist(estimaciones_proporcion, main=paste("Histograma de estimaciones de proporción para muestra para n=", n), xlab = "Proporción muestral", breaks = 20, col = "#2A9EB8")
}

# Parámetros
repeticiones <- 500  # Número de repeticiones

tamanos_muestra <- c(5, 10, 15, 20, 30, 50, 60, 100, 200, 500) # Tamaños de muestra a evaluar

# Realizo análisis de normalidad para cada tamaño de muestra
for (n in tamanos_muestra) {
 analisis_normalidad(n)
}

# Mostrar la tabla con los resultados
print(resultados_shapiro)
##    tamaño_muestra EstadisticoW ValorP CoefAsimetria CoefVariacion
## 1               5 2.366924e-15   0.00   -0.16220917     41.787247
## 2              10 1.208172e-09   0.00    0.07920915     31.139334
## 3              15 6.895541e-08   0.00   -0.00516896     25.000831
## 4              20 1.370652e-06   0.00    0.05759186     21.266741
## 5              30 5.893419e-05   0.00    0.18493314     18.706110
## 6              50 2.391929e-03   0.00    0.04593302     13.933419
## 7              60 2.677931e-03   0.00    0.14378235     12.721510
## 8             100 7.718247e-02   0.08    0.03307401      9.675876
## 9             200 1.738388e-02   0.02    0.13426017      6.726477
## 10            500 2.120636e-01   0.21   -0.03618083      3.155093

Revisando los resultados, con la prueba de ShapiroWiks podemos determinar si los datos se distribuyen de manera normal, se considera que los datos son normales si el valor p es mayor que el nivel de significancia (0.05). Teniendo en cuenta los resultados de las simulaciones, solo con 100 y con 500 simulaciones los datos se distribuyeron de manera normal, en muestras de 5, 10, 15, 20, 30, 50, 60, y 200, la distribución de las proporciones no fue normal.

El coeficiente de asimetría nos indica si una distribución de datos es simétrica o no. Un coeficiente igual a cero sugiere una distribución perfectamente simétrica alrededor de su media, valores positivos indican asimetría hacia la derecha (la cola derecha es más larga), y valores negativos indican asimetría hacia la izquierda (la cola izquierda es más larga).

Esta prueba se contrasta, observando la forma de distribución de los datos a través del histograma. En los resultados de las simulaciones, se encuentran distribuciones sesgados a la izquieda en muestras de tamaño 5, están muy cerca a 0 en muestras de tamaño 10, 15, 20, 50, 100 y 500 y estánn levemente asimétricas a la derecha en muestras de tamaño 30, 60 y 200.

Por otro lado, el coeficiente de vaciación se utiliza principalmente para comparar la variabilidad entre diferentes conjuntos de datos o muestras; cuando este es bajo indica que los datos tienen poca variabilidad en relación con su media y son relativamente consistentes. En los resultados de las simulaciones se observa claramente que a medida que aumentan los tamaños de muestra, la variación disminuye.

Punto 5.

Repita toda la simulación (puntos 1 – 4), pero ahora para lotes con 10% de plantas enfermas y de nuevo para lotes con un 90% de plantas enfermas. Concluya sobre los resultados del ejercicio.

Proporción de plantas 10% enfermas:

Repito el ejercicio de la simulación anterior.

# Paso 1 - Creación de la población.

set.seed(123) # Establezco la semilla aleatoria para reproducibilidad

Lote10<- 1000 #El tamaño de la población definida
enfermos10<- floor(Lote10*0.1) # de plantas enfermas
sanos10 <- Lote - enfermos10 # de plantas sanas
Poblacion10 <- c(rep(1, enfermos10), rep(0, sanos10)) #Represento a la población en este vector

lote_total10 <- sample(Poblacion10) #Mezcla la población de manera aleatoria


# Paso 2 - Cálculo de la proporción

muestra_y_proporcion10<- function(Poblacion10, n){
  
muestra10<- sample(Poblacion10, size = n)  # Obtengo una muestra aleatoria de la población

prop_muestral10 <-sum(muestra10==1)/ n # Calculo el estimador de la proporción muestral
return(prop_muestral10)

}

tamaño_muestra10<- 100
proporcion10<- muestra_y_proporcion10(lote_total10, tamaño_muestra10)
cat("Estimación de la proporción muestral (p^):", proporcion10, "\n")
## Estimación de la proporción muestral (p^): 0.11
# Paso 3 - Repetición de la simulación y validación de sesgo, simetría y variabilidad.

tamaño_muestra10<- 100 #Defino tamaños de muestra de 100
repeticiones10 <- 500  # Número de repeticiones solicitadas
estimaciones_proporcion10 <- numeric(repeticiones10) # Vector para almacenar las estimaciones de la proporción.

for (i in 1:repeticiones10) {
  estimaciones_proporcion10[i] <-muestra_y_proporcion10(lote_total10, tamaño_muestra10)
} # Realizo muestreo repetido y registro las estimaciones

library(e1071)
summary(estimaciones_proporcion10)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##  0.0300  0.0800  0.1000  0.1002  0.1200  0.2000
coefasismetria10<-skewness(estimaciones_proporcion10)
coefvariacion10<-(sd(estimaciones_proporcion10)/mean(estimaciones_proporcion10))*100
coefasismetria10
## [1] 0.2915664
coefvariacion10
## [1] 27.74509

Hasta el momento hemos creado una población de 1000 lotes con 10% de plantas enfermas, encontramos que en las 500 repeticiones, la proporción mínima de enfermos en una muestra es de 3% y el máximo es del 20%, la media de las proporciones muestrales es de 10%, de acuerdo a lo esperado y concuerda con la mediana.

El coeficiente de asimetría de 0,2 nos indica un valor muy cercano a la normalidad, con una leve asimetría hacia la derecha. El coeficiente de variación de 27, nos muestra moderada variabilidad de los datos en relación con su media, siendo aproximadamente un 27% de la media.

# Paso 4. Repetición de los puntos anteriores para tamaños de muestra n==5, 10, 15, 20, 30, 50, 60, 100, 200, 500.
set.seed(123)

resultados_shapiro10 <- data.frame( # Creo un dataframe para almacenar los resultados
  tamaño_muestra10 = numeric(0),
  EstadisticoW10 = numeric(0),
  ValorP10 = numeric(0),
  CoefAsimetria10 = numeric(0),  
  CoefVariacion10 = numeric(0)    
)

analisis_normalidad10 <- function(n) {
  estimaciones_proporcion10 <- numeric(repeticiones10)
  
  for (i in 1:repeticiones10) {
    estimaciones_proporcion10[i] <- muestra_y_proporcion10(lote_total10, n)
  }
  
  shapiro_test_result10 <- shapiro.test(estimaciones_proporcion10)$p.value  # Prueba de Shapiro-Wilk
  
  library(e1071)
  # Sesgo y varianza
  coefasimetrian10 <- skewness(estimaciones_proporcion10)  
  coefvariacionn10 <- (sd(estimaciones_proporcion10) / mean(estimaciones_proporcion10)) * 100
  
  # Formateo el valor p con dos decimales redondeados
  shapiro_test_result_formatted10 <- sprintf("%.2f", shapiro_test_result10)
  
  # Agrego los resultados al dataframe
  resultados_shapiro10 <<- rbind(resultados_shapiro10, 
                               data.frame(tamaño_muestra10 = n,
                                          EstadisticoW10 = shapiro_test_result10,
                                          ValorP10 = shapiro_test_result_formatted10,
                                          CoefAsimetria10 = coefasimetrian10,  
                                          CoefVariacion10 = coefvariacionn10))
   
  qqnorm (estimaciones_proporcion10, main=paste("QQ plot para n=", n))
  qqline(estimaciones_proporcion10, col="red")
  hist(estimaciones_proporcion10, main=paste("Histograma de estimaciones de proporción para muestra para n=", n), xlab = "Proporción muestral", breaks = 20, col = "#D580F3")
}

# Parámetros
repeticiones10 <- 500  # Número de repeticiones

tamanos_muestra10 <- c(5, 10, 15, 20, 30, 50, 60, 100, 200, 500) # Tamaños de muestra a evaluar

# Realizo análisis de normalidad para cada tamaño de muestra
for (n in tamanos_muestra10) {
 analisis_normalidad10(n)
}

# Mostrar la tabla con los resultados
print(resultados_shapiro10)
##    tamaño_muestra10 EstadisticoW10 ValorP10 CoefAsimetria10 CoefVariacion10
## 1                 5   2.691451e-27     0.00      0.95876391      117.611503
## 2                10   6.155449e-22     0.00      0.88027660       93.746023
## 3                15   1.782857e-17     0.00      0.50929493       73.089950
## 4                20   5.149692e-15     0.00      0.47916641       66.391496
## 5                30   8.740515e-12     0.00      0.34825430       51.612794
## 6                50   4.137340e-07     0.00      0.22004167       41.636956
## 7                60   2.367514e-08     0.00      0.42192289       36.600456
## 8               100   7.933574e-06     0.00      0.27409246       29.556764
## 9               200   2.994855e-03     0.00      0.06725312       18.802778
## 10              500   3.747628e-03     0.00      0.21813857        9.854783

Revisando los resultados cambiando la proporción de plantas enfermas, teniendo en cuenta la prueba de ShapiroWiks, en relación a la normalidad de las distribuciones muestrales,teniendo en cuenta una significancia de 0.05, encontramos que ninguna de las simulaciones con diferentes muestras se distribuyó de manera normal, al obtener resultados de 0,00 para todas. Esto se puede observar también en los gráficos qq-plot y los histogramas.

En el coeficiente de asimetría encontramos que ninguna de las distribuciones está muy cercana a cero, es decir que no son simétricas respecto a la media, todas las distribuciones muestrales de esta población, en sus diferentes tamaños de muestra tienen una asimetría hacia la derecha, su cola derecha es más larg, tendiendo a menores proporciones de enfermos. Esta asimetría también se puede observar en los histogramas presentados.

El coeficiente de variación igual que en el punto anterior de este ejercicio, nos muestra que a medida que la muestra es más grande, la variación disminuye, encontrando unas variaciones tan grandes como del 117% en relación a la media en muestras de 5, hasta unas variaciones más pequeñas del 9% en muestra de 500. Este comportamiento también lo puedo observar en el histograma, a medida que la muestra aumenta, los datos se observan más concentrados al rededor del 10%.

Proporción de plantas 90% enfermas:

Repetimos el ejercicio cambiando la proporción de plantas enfermas:

# Paso 1 - Creación de la población.

set.seed(123) # Establezco la semilla aleatoria para reproducibilidad

Lote90<- 1000 #El tamaño de la población definida
enfermos90<- floor(Lote10*0.9) # de plantas enfermas
sanos90 <- Lote - enfermos90 # de plantas sanas
Poblacion90 <- c(rep(1, enfermos90), rep(0, sanos90)) #Represento a la población en este vector

lote_total90 <- sample(Poblacion90) #Mezcla la población de manera aleatoria


# Paso 2 - Cálculo de la proporción

muestra_y_proporcion90<- function(Poblacion90, n){
  
muestra90<- sample(Poblacion90, size = n)  # Obtengo una muestra aleatoria de la población

prop_muestral90 <-sum(muestra90==1)/ n # Calculo el estimador de la proporción muestral
return(prop_muestral90)

}

tamaño_muestra90<- 100
proporcion90<- muestra_y_proporcion10(lote_total90, tamaño_muestra90)
cat("Estimación de la proporción muestral (p^):", proporcion90, "\n")
## Estimación de la proporción muestral (p^): 0.91
# Paso 3 - Repetición de la simulación y validación de sesgo, simetría y variabilidad.

tamaño_muestra90<- 100 #Defino tamaños de muestra de 100
repeticiones90 <- 500  # Número de repeticiones solicitadas
estimaciones_proporcion90 <- numeric(repeticiones90) # Vector para almacenar las estimaciones de la proporción.

for (i in 1:repeticiones90) {
  estimaciones_proporcion90[i] <-muestra_y_proporcion90(lote_total90, tamaño_muestra90)
} # Realizo muestreo repetido y registro las estimaciones

library(e1071)
summary(estimaciones_proporcion90)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##  0.7900  0.8800  0.9000  0.9022  0.9200  0.9700
coefasismetria90<-skewness(estimaciones_proporcion90)
coefvariacion90<-(sd(estimaciones_proporcion90)/mean(estimaciones_proporcion90))*100
coefasismetria90
## [1] -0.2973073
coefvariacion90
## [1] 3.158427

Analizando los resultados con una población de 1000 lotes con 90% de plantas enfermas, encontramos que en las 500 repeticiones, la proporción mínima de enfermos en una muestra es de 70% y el máximo es del 97%, la media de las proporciones muestrales es de 90%, de acuerdo a lo esperado y concuerda con la mediana.

El coeficiente de asimetría de -0,2 nos indica un valor muy cercano a la normalidad, con una leve asimetría hacia la izquierda. El coeficiente de variación de 3,15, nos muestra variabilidad pequeña de los datos en relación con su media, siendo aproximadamente un 3% de la media.

# Paso 4. Repetición de los puntos anteriores para tamaños de muestra n==5, 10, 15, 20, 30, 50, 60, 100, 200, 500.
set.seed(123)

resultados_shapiro90 <- data.frame( # Creo un dataframe para almacenar los resultados
  tamaño_muestra90 = numeric(0),
  EstadisticoW90 = numeric(0),
  ValorP90 = numeric(0),
  CoefAsimetria90 = numeric(0),  
  CoefVariacion90 = numeric(0)    
)

analisis_normalidad90 <- function(n) {
  estimaciones_proporcion90 <- numeric(repeticiones90)
  
  for (i in 1:repeticiones90) {
    estimaciones_proporcion90[i] <- muestra_y_proporcion90(lote_total90, n)
  }
  
  shapiro_test_result90 <- shapiro.test(estimaciones_proporcion90)$p.value  # Prueba de Shapiro-Wilk
  
  library(e1071)
  # Sesgo y varianza
  coefasimetrian90 <- skewness(estimaciones_proporcion90)  
  coefvariacionn90 <- (sd(estimaciones_proporcion90) / mean(estimaciones_proporcion90)) * 100
  
  # Formateo el valor p con dos decimales redondeados
  shapiro_test_result_formatted90 <- sprintf("%.2f", shapiro_test_result90)
  
  # Agrego los resultados al dataframe
  resultados_shapiro90 <<- rbind(resultados_shapiro90, 
                               data.frame(tamaño_muestra90 = n,
                                          EstadisticoW90 = shapiro_test_result90,
                                          ValorP10 = shapiro_test_result_formatted90,
                                          CoefAsimetria90 = coefasimetrian90,  
                                          CoefVariacion90 = coefvariacionn90))
   
  qqnorm (estimaciones_proporcion90, main=paste("QQ plot para n=", n))
  qqline(estimaciones_proporcion90, col="red")
  hist(estimaciones_proporcion90, main=paste("Histograma de estimaciones de proporción para muestra para n=", n), xlab = "Proporción muestral", breaks = 20, col = "#80F3C6")
}

# Parámetros
repeticiones90 <- 500  # Número de repeticiones

tamanos_muestra90 <- c(5, 10, 15, 20, 30, 50, 60, 100, 200, 500) # Tamaños de muestra a evaluar

# Realizo análisis de normalidad para cada tamaño de muestra
for (n in tamanos_muestra90) {
 analisis_normalidad90(n)
}

# Mostrar la tabla con los resultados
print(resultados_shapiro90)
##    tamaño_muestra90 EstadisticoW90 ValorP10 CoefAsimetria90 CoefVariacion90
## 1                 5   3.836240e-29     0.00     -1.21713981       14.125172
## 2                10   1.120997e-22     0.00     -0.81807326        9.911033
## 3                15   7.624245e-18     0.00     -0.54114157        8.071652
## 4                20   5.092163e-15     0.00     -0.54222619        7.403186
## 5                30   3.057806e-11     0.00     -0.30299812        5.675196
## 6                50   2.727114e-08     0.00     -0.30835639        4.523929
## 7                60   1.603335e-08     0.00     -0.43673195        4.084230
## 8               100   5.934289e-05     0.00     -0.09106391        2.988124
## 9               200   1.556971e-02     0.02     -0.05943721        2.143123
## 10              500   7.620683e-02     0.08     -0.01682828        1.047753

Revisando los resultados cambiando la proporción de plantas enfermas, teniendo en cuenta la prueba de ShapiroWiks, en relación a la normalidad de las distribuciones muestrales,teniendo en cuenta una significancia de 0.05, encontramos que solamente la simulación con 500 muestras se distribuyó de manera normal,las demás, al obtener resultados de 0,00 y 0.02 nos indica que no se distribuyen de manera normal. Esto se puede observar también en los gráficos qq-plot y los histogramas.

En el coeficiente de asimetría encontramos que solamente en las muestras de 100, 200 y 500, el valor está muy cercano a cero, es decir que son aporximadamente simétricas respecto a la media, con mejor simetría en la muestra de 500. Todas las distribuciones muestrales de esta población, en sus diferentes tamaños de muestra tienen una asimetría hacia la izquierda, su cola izquierda es más larga, tendiendo a mayores proporciones de enfermos. Esta asimetría también se puede observar en los histogramas presentados.

Una vez más, el coeficiente de variación nos muestra que a medida que la muestra es más grande, la variación disminuye, encontrando unas variaciones pequeñas en todas las muestras, la variación más grande está en la muestra de 5 con una variación del 14 % y la menor variación en la muestra de 500 con una variación del 1% de la media. Este comportamiento también lo puedo observar en el histograma, a medida que la muestra aumenta, los datos se observan más concentrados al rededor del 90%.

Conclusión.

En este ejercicio nos presenta la aplicación del teorema del límite central utilizando simulación, donde, en general, en las diferentes simulaciones, a medida que las muestras incrementan, la variabilidad de los datos disminuye. Si bien, a mayor muestra, mayor posibilidad de tener normalidad en los datos, esto no se aplicó en todos los casos aplicando la prueba de Shapirowiks. Los qq plot son una herramienta que ayuda visualmente a identificar la normalidad de los datos.

Los coeficientes de asimetría nos confirmaron estadísticamente lo observado en los histogramas respecto al sesgamiento de los datos, logrando identificar distribuciones poco sesgadas, sesgadas a la derecha o a la izquierda. Observé que el sesgamiento a la derecha o a la izquierda también se relaciona con la distribución proporcional de la población; cuando la proporción era del 10%, los datos eran sesgados a la derecha, cuando la proporción era 90%, el sesgamiento era hacia la izquieda, representando la mayor concentración de los datos al rededor de la proporción del parámetro.

Los estadísticos generados fueron consistentes con lo encontrado en las gráficas de histograma y ggplot.