El Teorema del Limite Central es uno de los mas 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.
lote= c(rep(1,500), rep(0,500))
table(lote)/1000
## lote
## 0 1
## 0.5 0.5
muestras_inicial=function(n){
muestra=sample(lote,size = n)
return(sum(muestra)/n)
}
estimadores_inicial=function(x, time){
estimadores=sapply(rep(x,time),muestras_inicial)
return(estimadores)
}
estimadores= estimadores_inicial(20,500)
hist(estimadores)
summary(estimadores)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.2500 0.4500 0.5000 0.5082 0.6000 0.8500
sd(estimadores)
## [1] 0.1094839
Al ejecutar la función de estimadores y replicarla 500 veces, se logra detectar que los datos son más simétricos y tienen un comportamiento normal, no están sesgados hacía sus extremos y la variabilidad en relación a la media no influye en su dispersión con una desciación estándar de +- el 10%, obteniendo datos más compactos y con una mediana del 50% que comprueba una simetria total de la muestra.
estimadores5 = estimadores_inicial(5,500)
par(mfrow = c(1, 2))
qqnorm(estimadores5, pch = 1, frame = FALSE, main = "Grafica QQ normal muestra n=5")
qqline(estimadores5, col = "steelblue", lwd = 2)
hist(estimadores5, main = "Histograma muestra n=5")
abline(v = mean(estimadores5), col="purple", lwd=3, lty=2)
shapiro.test(estimadores5)
##
## Shapiro-Wilk normality test
##
## data: estimadores5
## W = 0.9265, p-value = 6.233e-15
estimadores10 = estimadores_inicial(10,500)
par(mfrow = c(1, 2))
qqnorm(estimadores10, pch = 1, frame = FALSE, main = "Grafica QQ normal muestra n=10")
qqline(estimadores10, col = "steelblue", lwd = 2)
hist(estimadores10, main = "Histograma muestra n=10")
abline(v = mean(estimadores10), col="red", lwd=3, lty=2)
shapiro.test(estimadores10)
##
## Shapiro-Wilk normality test
##
## data: estimadores10
## W = 0.96688, p-value = 3.415e-09
estimadores15 = estimadores_inicial(15,500)
par(mfrow = c(1, 2))
qqnorm(estimadores15, pch = 1, frame = FALSE, main = "Grafica QQ normal muestra n=15")
qqline(estimadores15, col = "steelblue", lwd = 2)
hist(estimadores15, main = "Histograma muestra n=15")
abline(v = mean(estimadores15), col="blue", lwd=3, lty=2)
shapiro.test(estimadores15)
##
## Shapiro-Wilk normality test
##
## data: estimadores15
## W = 0.97255, p-value = 4.563e-08
estimadores20 = estimadores_inicial(20,500)
par(mfrow = c(1, 2))
qqnorm(estimadores20, pch = 1, frame = FALSE, main = "Grafica QQ normal muestra n=20")
qqline(estimadores20, col = "steelblue", lwd = 2)
hist(estimadores20, main = "Histograma muestra n=20")
abline(v = mean(estimadores20), col="green", lwd=3, lty=2)
shapiro.test(estimadores20)
##
## Shapiro-Wilk normality test
##
## data: estimadores20
## W = 0.98273, p-value = 1.174e-05
estimadores25 = estimadores_inicial(25,500)
par(mfrow = c(1, 2))
qqnorm(estimadores25, pch = 1, frame = FALSE, main = "Grafica QQ normal muestra n=25")
qqline(estimadores25, col = "steelblue", lwd = 2)
hist(estimadores25, main = "Histograma muestra n=25")
abline(v = mean(estimadores25), col="pink", lwd=3, lty=2)
shapiro.test(estimadores25)
##
## Shapiro-Wilk normality test
##
## data: estimadores25
## W = 0.98243, p-value = 9.738e-06
estimadores30 = estimadores_inicial(30,500)
par(mfrow = c(1, 2))
qqnorm(estimadores30, pch = 1, frame = FALSE, main = "Grafica QQ normal muestra n=30")
qqline(estimadores30, col = "steelblue", lwd = 2)
hist(estimadores30, main = "Histograma muestra n=30")
abline(v = mean(estimadores30), col="orange", lwd=3, lty=2)
shapiro.test(estimadores30)
##
## Shapiro-Wilk normality test
##
## data: estimadores30
## W = 0.98558, p-value = 7.332e-05
estimadores50 = estimadores_inicial(50,500)
par(mfrow = c(1, 2))
qqnorm(estimadores50, pch = 1, frame = FALSE, main = "Grafica QQ normal muestra n=50")
qqline(estimadores50, col = "steelblue", lwd = 2)
hist(estimadores50, main = "Histograma muestra n=50")
abline(v = mean(estimadores50), col="black", lwd=3, lty=2)
shapiro.test(estimadores50)
##
## Shapiro-Wilk normality test
##
## data: estimadores50
## W = 0.98116, p-value = 4.517e-06
estimadores60 = estimadores_inicial(60,500)
par(mfrow = c(1, 2))
qqnorm(estimadores60, pch = 1, frame = FALSE, main = "Grafica QQ normal muestra n=60")
qqline(estimadores60, col = "steelblue", lwd = 2)
hist(estimadores60, main = "Histograma muestra n=60")
abline(v = mean(estimadores60), col="yellow", lwd=3, lty=2)
shapiro.test(estimadores60)
##
## Shapiro-Wilk normality test
##
## data: estimadores60
## W = 0.99193, p-value = 0.008163
estimadores100 = estimadores_inicial(100,500)
par(mfrow = c(1, 2))
qqnorm(estimadores100, pch = 1, frame = FALSE, main = "Grafica QQ normal muestra n=100")
qqline(estimadores100, col = "steelblue", lwd = 2)
hist(estimadores100, main = "Histograma muestra n=100")
abline(v = mean(estimadores100), col="blue", lwd=3, lty=2)
shapiro.test(estimadores100)
##
## Shapiro-Wilk normality test
##
## data: estimadores100
## W = 0.99451, p-value = 0.06993
estimadores200 = estimadores_inicial(200,500)
par(mfrow = c(1, 2))
qqnorm(estimadores200, pch = 1, frame = FALSE, main = "Grafica QQ normal muestra n=200")
qqline(estimadores200, col = "steelblue", lwd = 2)
hist(estimadores200, main = "Histograma muestra n=200")
abline(v = mean(estimadores200), col="brown", lwd=3, lty=2)
shapiro.test(estimadores200)
##
## Shapiro-Wilk normality test
##
## data: estimadores200
## W = 0.99242, p-value = 0.01224
estimadores500 = estimadores_inicial(500,500)
par(mfrow = c(1, 2))
qqnorm(estimadores500, pch = 1, frame = FALSE, main = "Grafica QQ normal muestra n=500")
qqline(estimadores500, col = "steelblue", lwd = 2)
hist(estimadores500, main = "Histograma muestra n=500")
abline(v = mean(estimadores500), col="purple", lwd=3, lty=2)
shapiro.test(estimadores500)
##
## Shapiro-Wilk normality test
##
## data: estimadores500
## W = 0.99603, p-value = 0.243
resultados=data.frame(mean(estimadores5), mean(estimadores10), mean(estimadores15), mean(estimadores20), mean(estimadores25), mean(estimadores30), mean(estimadores50), mean(estimadores60), mean(estimadores100), mean(estimadores200), mean(estimadores500))
head(resultados)
## mean.estimadores5. mean.estimadores10. mean.estimadores15.
## 1 0.5072 0.4924 0.5082667
## mean.estimadores20. mean.estimadores25. mean.estimadores30.
## 1 0.4986 0.49976 0.5157333
## mean.estimadores50. mean.estimadores60. mean.estimadores100.
## 1 0.49736 0.4965 0.49988
## mean.estimadores200. mean.estimadores500.
## 1 0.49995 0.499584
Como se logra observar en la construcción de cada uno de las muestras para una población de plantas enfermas al 50%, se deduce que entre mayor sea la población existe una menor dispersión y una mayor normalidad, es decir, entra más datos se tengan en la muestra estos se ajustan a una dsitrbución normal como se aprecia en los histogramas.
Además con la implementación del gráfico qqnormal, en muestras de tamaño 5, 10, 20, 25, 30, 50 los puntos se alejan de la línea que define la normalidad y el histograma presenta asimetría hacía sus extremos; en cambio, con muestras superiores a 60 hasta 500 se observa como los puntos del gráfico qqnormal se acercan más a la línea de normalidad.
## lote
## 0 1
## 0.1 0.9
estimador5 = estimadores_inicial(5,900)
par(mfrow = c(1, 2))
qqnorm(estimador5, pch = 1, frame = FALSE, main = "Grafica QQ normal muestra n=5")
qqline(estimador5, col = "steelblue", lwd = 2)
hist(estimador5, main = "Histograma muestra n=5")
abline(v = mean(estimador5), col="purple", lwd=3, lty=2)
shapiro.test(estimador5)
##
## Shapiro-Wilk normality test
##
## data: estimador5
## W = 0.68961, p-value < 2.2e-16
estimador10 = estimadores_inicial(10,900)
par(mfrow = c(1, 2))
qqnorm(estimador10, pch = 1, frame = FALSE, main = "Grafica QQ normal muestra n=10")
qqline(estimador10, col = "steelblue", lwd = 2)
hist(estimador10, main = "Histograma muestra n=10")
abline(v = mean(estimador10), col="pink", lwd=3, lty=2)
shapiro.test(estimador10)
##
## Shapiro-Wilk normality test
##
## data: estimador10
## W = 0.84314, p-value < 2.2e-16
estimador15 = estimadores_inicial(15,900)
par(mfrow = c(1, 2))
qqnorm(estimador15, pch = 1, frame = FALSE, main = "Grafica QQ normal muestra n=15")
qqline(estimador15, col = "steelblue", lwd = 2)
hist(estimador15, main = "Histograma muestra n=15")
abline(v = mean(estimador15), col="orange", lwd=3, lty=2)
shapiro.test(estimador15)
##
## Shapiro-Wilk normality test
##
## data: estimador15
## W = 0.89913, p-value < 2.2e-16
estimador20 = estimadores_inicial(20,900)
par(mfrow = c(1, 2))
qqnorm(estimador20, pch = 1, frame = FALSE, main = "Grafica QQ normal muestra n=20")
qqline(estimador20, col = "steelblue", lwd = 2)
hist(estimador20, main = "Histograma muestra n=20")
abline(v = mean(estimador20), col="green", lwd=3, lty=2)
shapiro.test(estimador20)
##
## Shapiro-Wilk normality test
##
## data: estimador20
## W = 0.92598, p-value < 2.2e-16
estimador25 = estimadores_inicial(25,900)
par(mfrow = c(1, 2))
qqnorm(estimador25, pch = 1, frame = FALSE, main = "Grafica QQ normal muestra n=25")
qqline(estimador25, col = "steelblue", lwd = 2)
hist(estimador25, main = "Histograma muestra n=25")
abline(v = mean(estimador25), col="gold", lwd=3, lty=2)
shapiro.test(estimador25)
##
## Shapiro-Wilk normality test
##
## data: estimador25
## W = 0.93989, p-value < 2.2e-16
estimador30 = estimadores_inicial(30,900)
par(mfrow = c(1, 2))
qqnorm(estimador30, pch = 1, frame = FALSE, main = "Grafica QQ normal muestra n=30")
qqline(estimador30, col = "steelblue", lwd = 2)
hist(estimador30, main = "Histograma muestra n=30")
abline(v = mean(estimador30), col="brown", lwd=3, lty=2)
shapiro.test(estimador30)
##
## Shapiro-Wilk normality test
##
## data: estimador30
## W = 0.94614, p-value < 2.2e-16
estimador50 = estimadores_inicial(50,900)
par(mfrow = c(1, 2))
qqnorm(estimador50, pch = 1, frame = FALSE, main = "Grafica QQ normal muestra n=50")
qqline(estimador50, col = "steelblue", lwd = 2)
hist(estimador50, main = "Histograma muestra n=50")
abline(v = mean(estimador50), col="blue", lwd=3, lty=2)
shapiro.test(estimador50)
##
## Shapiro-Wilk normality test
##
## data: estimador50
## W = 0.96931, p-value = 7.766e-13
estimador60 = estimadores_inicial(60,900)
par(mfrow = c(1, 2))
qqnorm(estimador60, pch = 1, frame = FALSE, main = "Grafica QQ normal muestra n=60")
qqline(estimador60, col = "steelblue", lwd = 2)
hist(estimador60, main = "Histograma muestra n=60")
abline(v = mean(estimador60), col="red", lwd=3, lty=2)
shapiro.test(estimador60)
##
## Shapiro-Wilk normality test
##
## data: estimador60
## W = 0.97466, p-value = 2.091e-11
estimador100 = estimadores_inicial(100,900)
par(mfrow = c(1, 2))
qqnorm(estimador100, pch = 1, frame = FALSE, main = "Grafica QQ normal muestra n=100")
qqline(estimador100, col = "steelblue", lwd = 2)
hist(estimador100, main = "Histograma muestra n=100")
abline(v = mean(estimador100), col="yellow", lwd=3, lty=2)
shapiro.test(estimador100)
##
## Shapiro-Wilk normality test
##
## data: estimador100
## W = 0.98475, p-value = 4.51e-08
estimador200 = estimadores_inicial(200,900)
par(mfrow = c(1, 2))
qqnorm(estimador200, pch = 1, frame = FALSE, main = "Grafica QQ normal muestra n=200")
qqline(estimador200, col = "steelblue", lwd = 2)
hist(estimador200, main = "Histograma muestra n=200")
abline(v = mean(estimador200), col="black", lwd=3, lty=2)
shapiro.test(estimador200)
##
## Shapiro-Wilk normality test
##
## data: estimador200
## W = 0.99041, p-value = 1.328e-05
estimador500 = estimadores_inicial(500,900)
par(mfrow = c(1, 2))
qqnorm(estimador500, pch = 1, frame = FALSE, main = "Grafica QQ normal muestra n=500")
qqline(estimador500, col = "steelblue", lwd = 2)
hist(estimador500, main = "Histograma muestra n=500")
abline(v = mean(estimador500), col="purple", lwd=3, lty=2)
shapiro.test(estimador500)
##
## Shapiro-Wilk normality test
##
## data: estimador500
## W = 0.99487, p-value = 0.00393
resultados=data.frame(mean(estimador5), mean(estimador10), mean(estimador15), mean(estimador20), mean(estimador25), mean(estimador30), mean(estimador50), mean(estimador60), mean(estimador100), mean(estimador200), mean(estimador500))
head(resultados)
## mean.estimador5. mean.estimador10. mean.estimador15. mean.estimador20.
## 1 0.9042222 0.8984444 0.9006667 0.9017222
## mean.estimador25. mean.estimador30. mean.estimador50. mean.estimador60.
## 1 0.9003111 0.9007037 0.8977333 0.8994259
## mean.estimador100. mean.estimador200. mean.estimador500.
## 1 0.9000111 0.9010278 0.8994178
En el estudio para comprobar el teorema del límite central, se concluye que a medida que aumenta el tamaño de la muestra independientemente de las variables de enfermedad y no enfermedad, su comportamiento tiende a tener una distribución normal y evita sesgos hacía los extremos.
Para muestras muy pequeñas menor a 50 datos, la hipótesis se tiende a rechazar y se acepta la hipótesis alterna, caso contrario que sucede con las muestras que sobrepasan los 50 datos en dónde se acepta la hipótesis porque la distribución de los datos se tiende a normalizar con un comportamiento simétrico y se evitan los sesgos hacía los extremos.