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 %\)
**1. * Primero, establecemos una semilla para la reproducibilidad, que se refiere a fijar un valor inicial para el generador de nĂşmeros aleatorios. Al establecer una semilla, garantizamos que, si ejecutamos el mismo cĂłdigo nuevamente en el futuro, obtendremos exactamente la misma secuencia de nĂşmeros aleatorios.
set.seed(123)
Generamos la variable aleatoria con tamaño = 1, es decir, contamos con 1 intento.Luego graficamos una función de masa de probabilidad para ver la distribución de nuestra variable aleatoria y verificar que tanto las plantas enfermas como las sanas presentan una probabilidad igual
plantas <- rbinom(n = 1000, size = 1, p = 0.5)
plantas_fmp <- table(plantas) / length(plantas)
barplot(plantas_fmp, names.arg = c("Sanas", "Enfermas"), main = "DistribuciĂłn de plantas")
2. Generamos 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
Construimos una funciĂłn para obtener una muestra aleatoria y calcular el estimador de proporciĂłn muestral y retornamos nuestra proporciĂłn estimada.
f_estimador_muestra <- function(plantas, n){
muestra <- sample(plantas, size = n, replace = FALSE) #Obtener muestra aleatoria de la poblaciĂłn (las plantas)
proporcion_est <- sum(muestra) / n #Calcular el estimador de la proporciĂłn muestral
return(proporcion_est)
}
3. Repetir el escenario anterior con \(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?
Definimos una función llamada repeticiones donde designamos el número de repeticiones en 500 como lo dice el ejercicio. Luego creamos un vector llamado “result_p”, que va a almacenar los resultados del estimador \(pˆ\) que se iterarán a través del ciclo “for”. Posteriormente, creamos los gráficos y las pruebas necesarias para hacer nuestros análisis.
repeticiones <- function(n){
n_repeticiones <- 500 #Definir el nĂşmero de repeticiones en 500
result_p <- numeric(n_repeticiones) #Definir vector para almacenar resultados del estimador p^
#Repetir el escenario las 500 veces
for (i in 1:n_repeticiones) {
result_p[i] <- f_estimador_muestra(plantas, n)
result_p
}
#Análisis de los resultados
#SIMETRĂŤA
#1. Histograma
hist(result_p, main = "DistribuciĂłn de los estimadores de proporciĂłn", xlab = "Estimador de proporciĂłn")
abline(v = 0.5, col = "red", lwd = 2) # LĂnea roja en el valor verdadero del porcentaje
#2. Gráfico de densidad
plot(density(result_p), main = "Gráfico de Densidad de los estimadores de proporción")
#VARIANZZA
#1. Rango
range(result_p)
#2. Percentiles
quantile(result_p, c(0.25, 0.75))
#3. Desviación estándar
sd(result_p)
#4 Variabilidad
var(result_p)
#5. Boxplot
boxplot(result_p, main = "Boxplot de los estimadores de proporciĂłn")
#6. Qq-norm
qqnorm(result_p, main = paste("QQ Plot - Tamaño de Muestra:", n))
# qqline(result_p)
#VARIABILIDAD
shapiro.test(result_p)
}
Definido el cĂłdigo para poder imprimir nuestros resultados, llamamos las funciones respectivas designando el nĂşmero de las repeticiones en 500
f_estimador_muestra(plantas, 500)
## [1] 0.49
repeticiones(500)
##
## Shapiro-Wilk normality test
##
## data: result_p
## W = 0.99668, p-value = 0.3954
4. Repetir los puntos 2 y 3 para tamaños de muestra \(n = 5, 10, 15, 20, 30, 50, 60, 100, 200\). Comparar los resultados obtenidos para los diferentes tamaños de muestra en cuanto a la normalidad.
Hacemos lo mismo que hicimos para las 500 repeticiones, definiendo cada uno de los tamaños de muestra solicitados en el ejercicio.
f_estimador_muestra(plantas, 5)
## [1] 0.4
repeticiones(5)
##
## Shapiro-Wilk normality test
##
## data: result_p
## W = 0.92674, p-value = 6.632e-15
f_estimador_muestra(plantas, 10)
## [1] 0.5
repeticiones(10)
##
## Shapiro-Wilk normality test
##
## data: result_p
## W = 0.96554, p-value = 1.926e-09
f_estimador_muestra(plantas, 15)
## [1] 0.2666667
repeticiones(15)
##
## Shapiro-Wilk normality test
##
## data: result_p
## W = 0.97427, p-value = 1.062e-07
f_estimador_muestra(plantas, 20)
## [1] 0.45
repeticiones(20)
##
## Shapiro-Wilk normality test
##
## data: result_p
## W = 0.97654, p-value = 3.424e-07
f_estimador_muestra(plantas, 30)
## [1] 0.5666667
repeticiones(30)
##
## Shapiro-Wilk normality test
##
## data: result_p
## W = 0.98543, p-value = 6.634e-05
f_estimador_muestra(plantas, 50)
## [1] 0.46
repeticiones(50)
##
## Shapiro-Wilk normality test
##
## data: result_p
## W = 0.98949, p-value = 0.001204
f_estimador_muestra(plantas, 60)
## [1] 0.4333333
repeticiones(60)
##
## Shapiro-Wilk normality test
##
## data: result_p
## W = 0.99131, p-value = 0.004974
f_estimador_muestra(plantas, 100)
## [1] 0.5
repeticiones(100)
##
## Shapiro-Wilk normality test
##
## data: result_p
## W = 0.99401, p-value = 0.04609
f_estimador_muestra(plantas, 200)
## [1] 0.505
repeticiones(200)
##
## Shapiro-Wilk normality test
##
## data: result_p
## W = 0.99562, p-value = 0.1754