Funciones de densidad, distribución y cuantiles normales
David J. Santana
5 de octubre de 2016
Distribución normal.
Si \(X\sim N(0,1)\), entonces \[\Phi(x)=\int_{-\infty}^x \frac{1}{\sqrt{2\pi}}e^{-\frac{1}{2}u^2} du,\quad x\in \mathbb{R}.\]
u=seq(0,3.09,by=0.01)
p=pnorm(u)
m=matrix(p,ncol=10,byrow=TRUE)
m[1:10,1:4]
## [,1] [,2] [,3] [,4]
## [1,] 0.5000000 0.5039894 0.5079783 0.5119665
## [2,] 0.5398278 0.5437953 0.5477584 0.5517168
## [3,] 0.5792597 0.5831662 0.5870644 0.5909541
## [4,] 0.6179114 0.6217195 0.6255158 0.6293000
## [5,] 0.6554217 0.6590970 0.6627573 0.6664022
## [6,] 0.6914625 0.6949743 0.6984682 0.7019440
## [7,] 0.7257469 0.7290691 0.7323711 0.7356527
## [8,] 0.7580363 0.7611479 0.7642375 0.7673049
## [9,] 0.7881446 0.7910299 0.7938919 0.7967306
## [10,] 0.8159399 0.8185887 0.8212136 0.8238145
options(digits=4)
rownames(m)=seq(0,3,.1)
colnames(m)=seq(0,.09,.01)
m[1:10,1:4]
## 0 0.01 0.02 0.03
## 0 0.5000 0.5040 0.5080 0.5120
## 0.1 0.5398 0.5438 0.5478 0.5517
## 0.2 0.5793 0.5832 0.5871 0.5910
## 0.3 0.6179 0.6217 0.6255 0.6293
## 0.4 0.6554 0.6591 0.6628 0.6664
## 0.5 0.6915 0.6950 0.6985 0.7019
## 0.6 0.7257 0.7291 0.7324 0.7357
## 0.7 0.7580 0.7611 0.7642 0.7673
## 0.8 0.7881 0.7910 0.7939 0.7967
## 0.9 0.8159 0.8186 0.8212 0.8238
m
## 0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09
## 0 0.5000 0.5040 0.5080 0.5120 0.5160 0.5199 0.5239 0.5279 0.5319 0.5359
## 0.1 0.5398 0.5438 0.5478 0.5517 0.5557 0.5596 0.5636 0.5675 0.5714 0.5753
## 0.2 0.5793 0.5832 0.5871 0.5910 0.5948 0.5987 0.6026 0.6064 0.6103 0.6141
## 0.3 0.6179 0.6217 0.6255 0.6293 0.6331 0.6368 0.6406 0.6443 0.6480 0.6517
## 0.4 0.6554 0.6591 0.6628 0.6664 0.6700 0.6736 0.6772 0.6808 0.6844 0.6879
## 0.5 0.6915 0.6950 0.6985 0.7019 0.7054 0.7088 0.7123 0.7157 0.7190 0.7224
## 0.6 0.7257 0.7291 0.7324 0.7357 0.7389 0.7422 0.7454 0.7486 0.7517 0.7549
## 0.7 0.7580 0.7611 0.7642 0.7673 0.7704 0.7734 0.7764 0.7794 0.7823 0.7852
## 0.8 0.7881 0.7910 0.7939 0.7967 0.7995 0.8023 0.8051 0.8078 0.8106 0.8133
## 0.9 0.8159 0.8186 0.8212 0.8238 0.8264 0.8289 0.8315 0.8340 0.8365 0.8389
## 1 0.8413 0.8438 0.8461 0.8485 0.8508 0.8531 0.8554 0.8577 0.8599 0.8621
## 1.1 0.8643 0.8665 0.8686 0.8708 0.8729 0.8749 0.8770 0.8790 0.8810 0.8830
## 1.2 0.8849 0.8869 0.8888 0.8907 0.8925 0.8944 0.8962 0.8980 0.8997 0.9015
## 1.3 0.9032 0.9049 0.9066 0.9082 0.9099 0.9115 0.9131 0.9147 0.9162 0.9177
## 1.4 0.9192 0.9207 0.9222 0.9236 0.9251 0.9265 0.9279 0.9292 0.9306 0.9319
## 1.5 0.9332 0.9345 0.9357 0.9370 0.9382 0.9394 0.9406 0.9418 0.9429 0.9441
## 1.6 0.9452 0.9463 0.9474 0.9484 0.9495 0.9505 0.9515 0.9525 0.9535 0.9545
## 1.7 0.9554 0.9564 0.9573 0.9582 0.9591 0.9599 0.9608 0.9616 0.9625 0.9633
## 1.8 0.9641 0.9649 0.9656 0.9664 0.9671 0.9678 0.9686 0.9693 0.9699 0.9706
## 1.9 0.9713 0.9719 0.9726 0.9732 0.9738 0.9744 0.9750 0.9756 0.9761 0.9767
## 2 0.9772 0.9778 0.9783 0.9788 0.9793 0.9798 0.9803 0.9808 0.9812 0.9817
## 2.1 0.9821 0.9826 0.9830 0.9834 0.9838 0.9842 0.9846 0.9850 0.9854 0.9857
## 2.2 0.9861 0.9864 0.9868 0.9871 0.9875 0.9878 0.9881 0.9884 0.9887 0.9890
## 2.3 0.9893 0.9896 0.9898 0.9901 0.9904 0.9906 0.9909 0.9911 0.9913 0.9916
## 2.4 0.9918 0.9920 0.9922 0.9925 0.9927 0.9929 0.9931 0.9932 0.9934 0.9936
## 2.5 0.9938 0.9940 0.9941 0.9943 0.9945 0.9946 0.9948 0.9949 0.9951 0.9952
## 2.6 0.9953 0.9955 0.9956 0.9957 0.9959 0.9960 0.9961 0.9962 0.9963 0.9964
## 2.7 0.9965 0.9966 0.9967 0.9968 0.9969 0.9970 0.9971 0.9972 0.9973 0.9974
## 2.8 0.9974 0.9975 0.9976 0.9977 0.9977 0.9978 0.9979 0.9979 0.9980 0.9981
## 2.9 0.9981 0.9982 0.9982 0.9983 0.9984 0.9984 0.9985 0.9985 0.9986 0.9986
## 3 0.9987 0.9987 0.9987 0.9988 0.9988 0.9989 0.9989 0.9989 0.9990 0.9990
########
La matriz ‘m’ es una tabla de valores para la distribución normal. A continuación se muestra cómo pasarla en automático a formato .tex:
library(xtable)
mitabla=xtable(m,digits=4)
print.xtable(mitabla, type="latex", file="mitabla.tex")
########
Ahora una representación de las funciones de densidad, de distribución y de cuantiles.
fxnorm=function(valorx){
u=seq(-3.5,3.5,by=.01)
plot(u,dnorm(u),type="l",xlab="",ylab="",col="blue",
main='Función de densidad N(0,1)')
abline(h=0)
area=which((u<=valorx))
polygon(c(u[area],rev(u[area])),
c(dnorm(u)[area],rep(0,length(area))),col="yellow")
lines(u,dnorm(u),lwd=2,col="blue")
leyenda=paste('F(',valorx,') =',round(pnorm(valorx),4))
text(0,0.1,leyenda,cex = 1.2,col=2)
}
fxnorm(1)
######################
Fxnorm=function(valorx){
y=pnorm(valorx)
curve(pnorm(x),-3.5,3.5,ylab = 'F(x)',las=1,col=4,
main='Función de distribución N(0,1)',lwd=3.5)
abline(h=c(0,1),v=0)
lines(c(valorx,valorx,valorx,0),
c(0,y,y,y),col=2,lwd=3)
points(c(valorx,0),
c(0,y),pch=16)
leyenda=paste('F(',valorx,') =',round(y,4))
text(-2,0.5,leyenda,cex = 1.2,col=2)
text(valorx+0.5,0.1,paste('x=',valorx))
text(-0.5,y,round(y,4))
}
Fxnorm(1)
#############
par(mfrow=c(2,1))
fxnorm(1)
Fxnorm(1)
#############
par(mfrow=c(1,1),bg='lightyellow')
#############
curve(pnorm(x),-3,3,ylim=c(-3,3),lwd=2,asp=1,las=1)
axis(1,-3:3)
abline(h=-3:3,v=-3:3,lty=2,col='gray')
curve(qnorm(x),0.01,0.99,add=T,col=4,lwd=2)
curve(1*(x),add=T,col=2,lwd=2)
legend(-3,3,c('F(x)','Q(x)','y=x'),lwd=2,
col= c(1,4,2),text.col=c(1,4,2),cex=1.2)
#############
Qxnorm=function(valorp){
y=qnorm(valorp)
curve(qnorm(x),0.001,0.999,ylab = 'Q(p)',las=1,col=4,
main='Función Cuantil N(0,1)',lwd=3.5)
abline(v=c(0,1),h=0)
lines(c(valorp,valorp,valorp,0),
c(0,y,y,y),col=2,lwd=3)
points(c(valorp,0),
c(0,y),pch=16)
leyenda=paste('Q(',round(valorp,4),') =',round(y,4))
text(0.5,-2,leyenda,cex = 1.2,col=2)
text(valorp,-0.5,paste('p=',round(valorp,4)))
text(0.1,y+.2,round(y,4))
}
Qxnorm(0.95)
#############
par(mfrow=c(2,2))
fxnorm(1)
Fxnorm(1)
p=pnorm(1)
Qxnorm(p)
curve(pnorm(x),-3,3,ylim=c(-3,3),lwd=2,asp=1,las=1)
axis(1,-3:3)
abline(h=-3:3,v=-3:3,lty=2,col='gray')
curve(qnorm(x),0.01,0.99,add=T,col=4,lwd=2)
curve(1*(x),add=T,col=2,lwd=2)
No hay comentarios:
Publicar un comentario