Chapter 3. Parametric Distributions#

Figure 3.1. Discrete Distributions#

# Binomial Distribution

p <- .3
n <- 10
k <- seq(0,n)
pn <- matrix(1,n+1,1)*p
y <- choose(n,k)*(pn^k)*((1-pn)^(n-k))

x <- seq(-1,11,.001)
w <- .2
y0 <- (abs(x) < w)*y[1]
y1 <- (abs(x-1) < w)*y[2]
y2 <- (abs(x-2) < w)*y[3]
y3 <- (abs(x-3) < w)*y[4]
y4 <- (abs(x-4) < w)*y[5]
y5 <- (abs(x-5) < w)*y[6]
y6 <- (abs(x-6) < w)*y[7]
y7 <- (abs(x-7) < w)*y[8]
y8 <- (abs(x-8) < w)*y[9]
y9 <- (abs(x-9) < w)*y[10]
y10 <- (abs(x-10) < w)*y[11]

wd <- 1.4

plot(x,y0,type="l",lty=1,xaxs="i",yaxs="i",ylab="",xlab="",main="Binomial Distribution",
     xlim=c(-.5,10.5),ylim=c(0,.3),yaxt="n",xaxt="n",bty="n",yaxt="n",lwd=wd)
lines(x,y1,type="l",lwd=wd)
lines(x,y2,type="l",lwd=wd)
lines(x,y3,type="l",lwd=wd)
lines(x,y4,type="l",lwd=wd)
lines(x,y5,type="l",lwd=wd)
lines(x,y6,type="l",lwd=wd)
lines(x,y7,type="l",lwd=wd)
lines(x,y8,type="l",lwd=wd)
lines(x,y9,type="l",lwd=wd)
lines(x,y10,type="l",lwd=wd)
axis(side=1,seq(-1,11,1),lwd=wd)
axis(side=2,seq(0,.3,.1),lwd=wd)
## Poisson Distribution

p <- 3
n <- 10
k <- seq(0,n)
pn <- matrix(1,n+1,1)*p
y <- (pn^k)*exp(-pn)/factorial(k)

x <- seq(-1,11,.001)
w <- .2
y0 <- (abs(x) < w)*y[1]
y1 <- (abs(x-1) < w)*y[2]
y2 <- (abs(x-2) < w)*y[3]
y3 <- (abs(x-3) < w)*y[4]
y4 <- (abs(x-4) < w)*y[5]
y5 <- (abs(x-5) < w)*y[6]
y6 <- (abs(x-6) < w)*y[7]
y7 <- (abs(x-7) < w)*y[8]
y8 <- (abs(x-8) < w)*y[9]
y9 <- (abs(x-9) < w)*y[10]
y10 <- (abs(x-10) < w)*y[11]

plot(x,y0,type="l",lty=1,xaxs="i",yaxs="i",ylab="",xlab="",
     main="Poisson Distribution", xlim=c(-.5,10.5),ylim=c(0,.3),
     yaxt="n",xaxt="n",bty="n",yaxt="n",lwd=wd)
lines(x,y1,type="l",lwd=wd)
lines(x,y2,type="l",lwd=wd)
lines(x,y3,type="l",lwd=wd)
lines(x,y4,type="l",lwd=wd)
lines(x,y5,type="l",lwd=wd)
lines(x,y6,type="l",lwd=wd)
lines(x,y7,type="l",lwd=wd)
lines(x,y8,type="l",lwd=wd)
lines(x,y9,type="l",lwd=wd)
lines(x,y10,type="l",lwd=wd)
axis(side=1,seq(-1,11,1),lwd=wd)
axis(side=2,seq(0,.3,.1),lwd=wd)

Figure 3.2. Exponential and Double Exponential Densities#

# Exponential

m <- 5
x <- seq(0,m,by=0.01)
f <- exp(-x)

wd <- 1.4
 
plot(x,f,type="l",lty=1,xaxs="i",yaxs="i",xlim=c(-.1,m),ylim=c(0,1),
     main="Exponential",ylab="",xlab="",bty="n",yaxt="n",lwd=wd)
abline(v=0,lwd=wd)
axis(side=1,lwd=wd)
# Double Exponential

m <- 10
x <- seq(-m,m,by=0.01)
f <- exp(-abs(x)/2)/4
 
plot(x,f,type="l",lty=1,xaxs="i",yaxs="i",xlim=c(-m,m),ylim=c(0,.25),
     main="Double Exponential",ylab="",xlab="",bty="n",yaxt="n",xaxt="n",lwd=wd)
axis(side=1,seq(-m,m,4),lwd=wd)

Figure 3.3. Normal, Cauchy, Student t, and Logistic Densities#

# Student t 

x <- seq(-4,4,by=0.01)
y1 <- dt(x,1)
y2 <- dt(x,2)
y3 <- dt(x,5)
y4 <- dnorm(x)

wd <- 1.4

plot(x,y1,lty=5,type="l",xaxs="i",yaxs="i",xlim=c(-4,4),ylim=c(0,.42),ylab="",
     xlab="",yaxt="n",bty="n",lwd=wd)
lines(x,y2,lty=6,lwd=wd)
lines(x,y3,lty=2,lwd=wd)
lines(x,y4,lty=1,lwd=wd)
axis(side=1,seq(-5,5,1),lwd=wd)
legend("topright",legend=c("Normal",expression(t[5]),expression(t[2]),"Cauchy"), 
       lty=c(1,2,6,5),lwd=wd,bty="n")
# Logistic

x <- seq(-8,8,by=0.01)
s <- pi/sqrt(3)
f1 <- dnorm(x/s)/s
f2 <- exp(-x)/((1+exp(-x))^2)

plot(x,f1,type="l",lty=2,xaxs="i",yaxs="i",xlim=c(-7,7),ylim=c(0,.3),ylab="",
     xlab="",yaxt="n",bty="n",lwd=wd)
lines(x,f2,lwd=wd)
axis(side=1,seq(-8,8,2),lwd=wd)
legend("topright",legend=c("Logistic","Normal"),lty=c(1,2),y.intersp=1.3,lwd=wd,bty="n")

Figure 3.4. Chi-Square and F Densities#

# Chi-Square

x <- seq(0,10,.01)
g1 <- dchisq(x,2)
g2 <- dchisq(x,3)
g3 <- dchisq(x,4)
g4 <- dchisq(x,6)

wd <- 1.4

plot(x,g1,type="l",lty=1,xaxs="i",yaxs="i",xlim=c(-.1,10),ylab="",xlab="",
     xaxt="n",yaxt="n",bty="n",lwd=wd)
lines(x,g2,lty=6,lwd=wd)
lines(x,g3,lty=2,lwd=wd)
lines(x,g4,lty=5,lwd=wd)
legend("topright",legend=c(expression(r==2),expression(r==3),expression(r==4),
                           expression(r==6)),lty=c(1,6,2,5),y.intersp=1.3,lwd=wd,bty="n")
axis(side=1,seq(0,10,1),lwd=wd)
abline(v=0,lwd=wd)
# F

x <- seq(0,5,by=0.01)
y1 <- df(x,2,10)
y2 <- df(x,3,10)
y3 <- df(x,6,10)
y4 <- df(x,8,10)

plot(x,y1,type="l",lty=1,xaxs="i",yaxs="i",xlim=c(-.1,5),ylim=c(0,1),ylab="",
     xlab="",yaxt="n",bty="n",lwd=wd)
lines(x,y2,lty=6,lwd=wd)
lines(x,y3,lty=2,lwd=wd)
lines(x,y4,lty=5,lwd=wd)
axis(side=1,seq(0,10,1),lwd=wd)
abline(v=0,lwd=wd)
legend("topright",legend=c(expression(m==2),expression(m==3),expression(m==6),
                           expression(m==8)),lty=c(1,6,2,5),lwd=wd,bty="n")

Figure 3.5. Beta and Lognormal Densities#

# Beta

x <- seq(0,1,.001)
b1 <- dbeta(x,2,2)
b2 <- dbeta(x,2,5)
b3 <- dbeta(x,5,1)
leg1 <- expression(paste(alpha==2,", ",beta==2))
leg2 <- expression(paste(alpha==2,", ",beta==5))
leg3 <- expression(paste(alpha==5,", ",beta==1))

wd <- 1.4
 
plot(x,b1,type="l",lty=1,xaxs="i",yaxs="i",xlim=c(0,1),ylim=c(0,3.6),ylab="",
     xlab="",yaxt="n",bty="n",lwd=wd)
axis(side=1,lwd=wd)
lines(x,b2,lty=5,lwd=wd)
lines(x,b3,lty=2,lwd=wd)
legend("top",legend=c(leg1,leg2,leg3),lty=c(1,5,2),y.intersp=1.3,lwd=wd,bty="n")
# Lognormal

x <- seq(0,3,by=0.001)
v = 1
f1 <- exp(-((log(x))^2)/2/v)/sqrt(2*pi)/sqrt(v)/x
v = 1/4
f2 <- exp(-((log(x))^2)/2/v)/sqrt(2*pi)/sqrt(v)/x
v = 1/16
f3 <- exp(-((log(x))^2)/2/v)/sqrt(2*pi)/sqrt(v)/x
leg1 <- expression(v==1)
leg2 <- expression(v==1/4)
leg3 <- expression(v==1/16)

plot(x,f1,type="l",lty=1,xaxs="i",yaxs="i",xlim=c(0,3),ylim=c(0,1.7),ylab="",
     xlab="",yaxt="n",xaxt="n",bty="n",lwd=wd)
lines(x,f2,lty=2,lwd=wd)
lines(x,f3,lty=5,lwd=wd)
axis(side=1,seq(0,3,1),lwd=wd)
legend("topright",legend=c(leg1,leg2,leg3),lty=c(1,2,5),y.intersp=1.3,lwd=wd,bty="n")

Figure 3.6: Weibull and Type I Extreme Value Densities#

# Weibell

x <- seq(0,3,by=0.001)
k1 <- 1/2
k2 <- 1
k3 <- 2
k4 <- 4
y1 <- k1*(x^(k1-1))*exp(-x^k1)
y2 <- k2*(x^(k2-1))*exp(-x^k2)
y3 <- k3*(x^(k3-1))*exp(-x^k3)
y4 <- k4*(x^(k4-1))*exp(-x^k4)
leg1 <- expression(alpha==1/2)
leg2 <- expression(alpha==1)
leg3 <- expression(alpha==2)
leg4 <- expression(alpha==4)

wd <- 1.4

plot(x,y1,type="l",lty=1,xaxs="i",yaxs="i",xlim=c(-.1,3),ylim=c(0,2),ylab="",
     xlab="",yaxt="n",xaxt="n",bty="n",lwd=wd)
lines(x,y2,lty=5,lwd=wd)
lines(x,y3,lty=2,lwd=wd)
lines(x,y4,lty=4,lwd=wd)
legend("topright",legend=c(leg1,leg2,leg3,leg4),lty=c(1,5,2,4),y.intersp=1.3,lwd=wd,bty="n")
axis(side=1,seq(0,3,1),lwd=wd)
abline(v=0,lwd=wd)
# Gumbel

x <- seq(-3,6,by=0.01)
f <- exp(-(x+exp(-x)))

plot(x,f,type="l",lty=1,xaxs="i",yaxs="i",xlim=c(-3,6),ylim=c(0,.4),ylab="",
     xlab="",yaxt="n",xaxt="n",bty="n",lwd=wd)
axis(side=1,seq(-3,6,1),lwd=wd)

Figure 3.7: Mixture of Normals Densities#

# Normal

phi <- function (x,m,s) exp(-(((x-m)/s)^2)/2)/(s*sqrt(2*pi))

x <- seq(-3.5,3.5,by=0.01)
# Skewed
f1 <- phi(x,-.3,sqrt(1.2))*3/5 + phi(x,.2,sqrt(1.2)/2)/5 + phi(x,.7,sqrt(1.2)/2)/5

wd <- 1.4

plot(x ,f1,type="l",lty=1,xaxs="i",yaxs="i",ylim=c(0,.45),xlim=c(-3.5,3.5),ylab="",
     xlab="",yaxt="n",bty="n",lwd=wd)
axis(side=1,seq(-4,4,1),lwd=wd)
# Strongly Skewed
s = 3/sqrt(511)
sv = s*sqrt(2)
f2 <- (phi(x,-.95,s) + phi(x,-3/4,sv) + phi(x,-1/2,2*s) + phi(x,-1/4,2*sv) + phi(x,0,4*s) +
       phi(x,1/4,4*sv) + phi(x,1/2,8*s) + phi(x,3/4,8*sv) + phi(x,1,16*s))/9

plot(x,f2,type="l",lty=1,xaxs="i",yaxs="i",ylim=c(0,.66),xlim=c(-3.5,3.5),ylab="",
     xlab="",yaxt="n",bty="n",lwd=wd)
axis(side=1,seq(-4,4,1),lwd=wd)
# Kurtotic
f3 <- phi(x,0,10*sqrt(10/703))*7/10 + phi(x,0,sqrt(10/703))*3/10 

plot(x,f3,type="l",lty=1,xaxs="i",yaxs="i",ylim=c(0,1.25),xlim=c(-3.5,3.5),ylab="",
     xlab="",yaxt="n",bty="n",lwd=wd)
axis(side=1,seq(-4,4,1),lwd=wd)
# Bimodal
f4 <- phi(x,-7/8,sqrt(15)/8)/2 + phi(x,7/8,sqrt(15)/8)/2 

plot(x,f4,type="l",lty=1,xaxs="i",yaxs="i",ylim=c(0,.42),xlim=c(-3.5,3.5),ylab="",
     xlab="",yaxt="n",bty="n",lwd=wd)
axis(side=1,seq(-4,4,1),lwd=wd)
# Skewed Bimodal
f5 <- phi(x,-3/8,sqrt(237/320))*3/4 + phi(x,9/8,sqrt(237/320)/3)/4

plot(x,f5,type="l",lty=1,xaxs="i",yaxs="i",ylim=c(0,.43),xlim=c(-3.5,3.5),ylab="",
     xlab="",yaxt="n",bty="n",lwd=wd)
axis(side=1,seq(-4,4,1),lwd=wd)
# Claw
sig1 <- sqrt(199/100)
sig2 <- sqrt(2-sig1^2)
f6 <- phi(x,0,sig1)/2 + (phi(x,-1,sig2) + phi(x,-1/2,sig2) + phi(x,0,sig2) + 
                         phi(x,1/2,sig2) + phi(x,1,sig2))/10

plot(x,f6,type="l",lty=1,xaxs="i",yaxs="i",ylim=c(0,.55),xlim=c(-3.5,3.5),ylab="",
     xlab="",yaxt="n",bty="n",lwd=wd)
axis(side=1,seq(-4,4,1),lwd=wd)