Here is the simulation that generated the plots in class.
p <- 5
n <- 100
lo3 <- hi3 <- lo2 <- hi2 <- lo <- hi <- vector("list",p)
set.seed(1)
for(i in 1:p) {
dat <- matrix(rnorm(n*10,3.5,sd=1.5),ncol=10)
m <- apply(dat,1,mean)
s <- apply(dat,1,sd)
lo[[i]] <- m-qnorm(0.975)*1.5/sqrt(10)
hi[[i]] <- m+qnorm(0.975)*1.5/sqrt(10)
lo2[[i]] <- m-qnorm(0.975)*s/sqrt(10)
hi2[[i]] <- m+qnorm(0.975)*s/sqrt(10)
lo3[[i]] <- m-qt(0.975,9)*s/sqrt(10)
hi3[[i]] <- m+qt(0.975,9)*s/sqrt(10)
}
r <- range(unlist(c(lo,hi,lo2,hi2,lo3,hi3)))
par(mfrow=c(1,5), las=1, mar=c(5.1,2.1,6.1,2.1))
for(i in 1:p) {
plot(0,0,type="n",ylim=0.5+c(0,n),xlim=r,ylab="",xlab="",yaxt="n")
abline(v=3.5,lty=2,col="red",lwd=2)
segments(lo[[i]],1:n,hi[[i]],1:n,lwd=2)
o <- (1:n)[lo[[i]] > 3.5 | hi[[i]] < 3.5]
segments(lo[[i]][o],o,hi[[i]][o],o,lwd=2,col="orange")
}
par(mfrow=c(1,1))
mtext(expression(paste("500 confidence intervals for ",mu)),side=3,cex=1.5,xpd=TRUE,line=4)
mtext(expression(paste("(",sigma," known)")),side=3,cex=1.3,xpd=TRUE,line=2.7)
par(mfrow=c(1,5), las=1, mar=c(5.1,2.1,6.1,2.1))
for(i in 1:p) {
plot(0,0,type="n",ylim=0.5+c(0,n),xlim=r,ylab="",xlab="",yaxt="n")
abline(v=3.5,lty=2,col="red",lwd=2)
segments(lo2[[i]],1:n,hi2[[i]],1:n,lwd=2)
o <- (1:n)[lo2[[i]] > 3.5 | hi2[[i]] < 3.5]
segments(lo2[[i]][o],o,hi2[[i]][o],o,lwd=2,col="orange")
}
par(mfrow=c(1,1))
mtext(expression(paste("500 BAD confidence intervals for ",mu)),side=3,cex=1.5,xpd=TRUE,line=4)
mtext(expression(paste("(",sigma," unknown)")),side=3,cex=1.3,xpd=TRUE,line=2.7)
par(mfrow=c(1,5), las=1, mar=c(5.1,2.1,6.1,2.1))
for(i in 1:p) {
plot(0,0,type="n",ylim=0.5+c(0,n),xlim=r,ylab="",xlab="",yaxt="n")
abline(v=3.5,lty=2,col="red",lwd=2)
segments(lo3[[i]],1:n,hi3[[i]],1:n,lwd=2)
o <- (1:n)[lo3[[i]] > 3.5 | hi3[[i]] < 3.5]
segments(lo3[[i]][o],o,hi3[[i]][o],o,lwd=2,col="orange")
}
par(mfrow=c(1,1))
mtext(expression(paste("500 confidence intervals for ",mu)),side=3,cex=1.5,xpd=TRUE,line=4)
mtext(expression(paste("(",sigma," unknown)")),side=3,cex=1.3,xpd=TRUE,line=2.7)