Significado de los intervalos de confianza desconociendo la desviación típica de la población

En esta experiencia se trata de ver el significado de los intervalos de confianza en el caso de desconocer la desviación típica de la población de partida (véase script 9.15 del libro para el caso de desviación típica poblacional conocida).

#INICIO -------------------------
rm(list=ls(all=TRUE))

#Generaremos 100 muestras de tamaño 200; tendremos en total 20000 valores aleatorios de una #N(0,1), aunque se supone que desconocemos la desviación típica
valores.aleatorios<-rnorm(20000)

#Organizamos los valores anteriores en una matriz de 100 filas (y 200 columnas)
x<-matrix(valores.aleatorios,nrow=100)
#Formamos un vector con todas las medias muestrales
medias.muestrales<-margin.table(x,1)/200
xraya<-c(medias.muestrales)

#Calculamos, a continuación, las cuasidesviaciones típicas de cada una de las muestras
sds<-apply(x,1,sd)

li<-numeric(100)
ls<-numeric(100)

for (j in 1:100)
{
#Calculamos los límites inferiores (li) y superiores (ls) de los intervalos de confianza (IC) al nivel del 95%
li[j]<-c(xraya[j]-qt(0.975,199)*sds[j]/sqrt(200))
ls[j]<-c(xraya[j]+qt(0.975,199)*sds[j]/sqrt(200))
}

#Formamos todos los intervalos de confianza
IC<-matrix(c(li,ls),nrow=100)
IC
       
plot(li,type="n",ylim=c(-0.3,0.3),xlab=" ",ylab=" ")
#Con la opción type="n" no dibujamos el gráfico, solo los ejes
#A continuación dibujamos los segmentos que representan los diferentes IC
coordx<-1:100 #Situamos los IC en las verticales de los primeros 100 números naturales
segments(coordx,li,coordx,ls)
abline(h=0,lwd=3) #Dibujamos la línea de la media (cero)
#El gráfico de los 200 IC es

#Calculemos cuántos IC no contienen a la media
a<-c(rep(0,100))
for (i in 1:100) {if (IC[i,1]>0 | IC[i,2]<0) a[i]<-1 else 0}
a

#El número de IC que no contienen a la media es, en este caso:
sum(a)
#FIN -------------------------

Al ejecutar el script se observa, como era de esperar, que el número de intervalos de confianza que no contienen a la media es pequeño: 7, 3, 5, 1... (En otras ejecuciones del script se obtendrían valores diferentes).

No hay comentarios:

Publicar un comentario