# pqdfns Sept 2007 # # demo of probability functions # pdist gives cdf P(x) # qdist gives quantile q(p) or P(q(p))=p # ddist gives density # # # first some normals # pnorm(1.96) # P(1.96) pnorm(1.96, lower.tail=F) # 1-P(1.96) pnorm(1.96, lower.tail=F, log.p=T) # log(1-P(1.96)) # just a simple check log(.05) # go far into tail pnorm(100, lower.tail=F, log.p=T) # -x*x/2 - log x - stuff # quantiles qnorm(.025) qnorm(.95) # go far into tail qnorm(1e-6) # one in a million qnorm(log(1e-6), log.p=T) # # now Student's t # pt(1,df=1) # Cauchy symmetries qt(.25,1) df <- 5:10 # can it do a vector? pt(2.306,df) # vague memory of a critical value qt(.975,df) qt(1.e-4,10000) # far in tail, big df # # gamma and Poisson # pgamma(2*log(2),1) # 1 - 2**(-2) pgamma(4,3) # incomplete gamma to 4, shape 3 x <- 4 (1 + x + x*x/2)*exp(-x) # check 2*qgamma(.95,df/2) # chi-square with manydf lam = .3 # Poisson rate (1+lam)*exp(-lam) # Pr(X=0) + Pr(X=1) pgamma(.3,2,lower.tail=F) # upper tail # # beta and binomial # pbinom(0:8,8,.4) # Binomial df, n=8, p=.4 p <- dbinom(0:8,8,.4) # Binomial probs, n=8, p=.4 p cumsum(p) # check df sum(p*log(p)) # information pbinom(0:6,6,.4) # cumulatives pbinom(3,6,.4) # Pr(X=0)+Pr(X=1)+Pr(X=2)+Pr(X=3) pbeta(.4,4,3,lower.tail=F) # using incomplete beta function # # done rm(list=ls()) q()