# The MCMC Procedure

### Standard Distributions

Subsections:

The section Univariate Distributions (Table 61.7 through Table 61.35) lists all univariate distributions that PROC MCMC recognizes. The section Multivariate Distributions (Table 61.36 through Table 61.40) lists all multivariate distributions that PROC MCMC recognizes. With the exception of the multinomial distribution, all these distributions can be used in the MODEL , PRIOR , and HYPERPRIOR statements. The multinomial distribution is supported only in the MODEL statement. The RANDOM statement supports a limited number of distributions; see Table 61.4 for the complete list.

See the section Using Density Functions in the Programming Statements for information about how to use distributions in the programming statements. To specify an arbitrary distribution, you can use the GENERAL and DGENERAL functions. See the section Specifying a New Distribution for more details. See the section Truncation and Censoring for tips about how to work with truncated distributions and censoring data.

#### Univariate Distributions

Table 61.7: Beta Distribution

 PROC specification beta(a, b) Density Parameter restriction , Range Mean Variance Mode Random number If , see (Cheng, 1978); if , see (Atkinson and Whittaker, 1976) and (Atkinson, 1979); if and , see (Cheng, 1978); if a = 1 or b = 1, use the inversion method; if , use a uniform random number generator.

Table 61.8: Binary Distribution

 PROC specification binary(p) Density Parameter restriction Range Mean round Variance Mode Random number Generate . If , ; else,

Table 61.9: Binomial Distribution

 PROC specification binomial(n, p) Density Parameter restriction Range Mean Variance Mode

Table 61.10: Cauchy Distribution

 PROC specification cauchy(a, b) Density Parameter restriction Range Mean Does not exist. Variance Does not exist. Mode a Random number Generate ; let . Repeat the procedure until . is a draw from the standard Cauchy, and (Ripley, 1987).

Table 61.11: Distribution

 PROC specification chisq() Density Parameter restriction Range if ; otherwise. Mean Variance Mode if ; does not exist otherwise. Random number is a special case of the gamma distribution: is a draw from the distribution.

Table 61.12: Exponential Distribution

 PROC specification expchisq() Density Parameter restriction Range Mode Random number Generate , and is a draw from the exponential distribution. Relationship to the distribution

Table 61.13: Exponential Exponential Distribution

 PROC specification expexpon(scale = b ) expexpon(iscale = ) Density Parameter restriction Range Same Mode Random number Generate , and is a draw from the exponential exponential distribution. Note that an exponential exponential distribution is not the same as the double exponential distribution. Relationship to the exponential distribution

Table 61.14: Exponential Gamma Distribution

 PROC specification expgamma(a, scale = b ) expgamma(a, iscale = ) Density Parameter restriction Range Same Mode Random number Generate , and is a draw from the exponential gamma distribution. Relationship to the distribution

Table 61.15: Exponential Inverse Distribution

 PROC specification expichisq() Density Parameter restriction Range Mode Random number Generate , and is a draw from the exponential inverse distribution. Relationship to the distribution

Table 61.16: Exponential Inverse-Gamma Distribution

 PROC specification expigamma(a, scale = b ) expigamma(a, iscale = ) Density Parameter restriction Range Same Mode Random number Generate , and is a draw from the exponential inverse-gamma distribution. Relationship to the distribution

Table 61.17: Exponential Scaled Inverse Distribution

 PROC specification expsichisq(, s) Density Parameter restriction Range Mode Random number Generate , and is a draw from the exponential scaled inverse distribution. Relationship to the distribution

Table 61.18: Exponential Distribution

 PROC specification expon(scale = b ) expon(iscale = ) Density Parameter restriction Range Same Mean b Variance Mode 0 0 Random number The exponential distribution is a special case of the gamma distribution: is a draw from the exponential distribution.

Table 61.19: Gamma Distribution

 PROC specification gamma(a, scale = b ) gamma(a, iscale = ) Density Parameter restriction Range if otherwise. Same Mean ab Variance Mode if if Random number See (McGrath and Irving, 1973).

Table 61.20: Geometric Distribution

 PROC specification geo(p) Density * Parameter restriction Range Mean round() Variance Mode 0 Random number Based on samples obtained from a Bernoulli distribution with probability p until the first success. *The random variable is the total number of failures in an experiment before the first success. This density function is not to be confused with another popular formulation, , which counts the total number of trials until the first success.

Table 61.21: Inverse Distribution

 PROC specification ichisq() Density Parameter restriction Range Mean if Variance if Mode Random number Inverse is a special case of the inverse-gamma distribution: is a draw from the inverse distribution.

Table 61.22: Inverse-Gamma Distribution

 PROC specification igamma(a, scale = b ) igamma(a, iscale = ) Density Parameter restriction Range Same Mean if if Variance Mode Random number Generate , and is a draw from the distribution. Relationship to the gamma distribution

Table 61.23: Laplace (Double Exponential) Distribution

 PROC specification laplace(a, scale = b) laplace(a, iscale = ) Density Parameter restriction Range Same Mean a a Variance Mode a a Random number Inverse CDF. Generate . If else . is a draw from the Laplace distribution.

Table 61.24: Logistic Distribution

 PROC specification logistic(a, b) Density Parameter restriction Range Mean a Variance Mode a Random number Inverse CDF method with . Generate , and is a draw from the logistic distribution.

Table 61.25: Lognormal Distribution

 PROC specification lognormal(, sd = s) lognormal(, var = v) lognormal(, prec = ) Density Parameter restriction Range Same Same Mean Variance Mode Random number Generate , and is a draw from the lognormal distribution.

Table 61.26: Negative Binomial Distribution

 PROC specification negbin(n, p) Density Parameter restriction Range Mean round Variance Mode Random number Generate , and (Fishman, 1996).

Table 61.27: Normal Distribution

 PROC specification normal(, sd = s) normal(, var = v) normal(, prec = ) Density Parameter restriction Range Same Same Mean Same Same Variance v Mode Same Same

Table 61.28: Pareto Distribution

 PROC specification pareto(a, b) Density Parameter restriction Range Mean if Variance if Mode b Random number Inverse CDF method with . Generate , and is a draw from the Pareto distribution. Useful transformation is Beta(a, 1)I{}.

Table 61.29: Poisson Distribution

 PROC specification poisson() Density Parameter restriction Range Mean Variance , if Mode round

Table 61.30: Scaled Inverse Distribution

 PROC specification sichisq() Density Parameter restriction Range Mean if Variance if Mode Random number Scaled inverse is a special case of the inverse-gamma distribution: is a draw from the scaled inverse distribution.

Table 61.31: t Distribution

 PROC specification t(, sd = s, ) t(, var = v, ) t(, prec = , ) Density Parm restriction , , , Range Same Same Mean if Same Same Variance if if if Mode Same Same Random number is a draw from the t distribution.

Table 61.32: Table (Categorical) Distribution

 PROC specification table(), where , for Density Parameter restriction with all Range Mode i such that Random number Inverse CDF method with .

Table 61.33: Uniform Distribution

 PROC specification uniform(a, b) Density Parameter restriction none Range Mean Variance Mode Does not exist Random number Mersenne Twister (Matsumoto and Kurita, 1992, 1994; Matsumoto and Nishimura, 1998)

Table 61.34: Wald Distribution

 PROC specification wald(, ) Density Parameter restriction Range Mean Variance Mode Random number Generate . Let and . Perform a Bernoulli trial, . If , choose ; otherwise, choose (Michael, Schucany, and Haas, 1976).

Table 61.35: Weibull Distribution

 PROC specification weibull(, c, ) Density Parameter restriction Range if otherwise Mean Variance Mode if Random number Inverse CDF method with . Generate , and is a draw from the Weibull distribution.

#### Multivariate Distributions

Table 61.36: Dirichlet Distribution

 PROC specification dirich(), where , for Density , where Parameter restriction Range , Mean Mode

Table 61.37: Inverse Wishart Distribution

 PROC specification iwishart(, ), both and are matrices Density Parameter restriction must be symmetric and positive definite; Range is symmetric and positive definite Mean Mode

Table 61.38: Multivariate Normal Distribution

 PROC specification mvn(, ), where , for , and is a variance matrix Density Parameter restriction must be symmetric and positive definite Range Mean Mode

Table 61.39: Autoregressive Multivariate Normal Distribution

 PROC specification mvnar(, sd=,) mvnar(, var=,) mvnar(, prec=, ) Density where Parameter restriction and Range Mean Mode Special Case When , the distribution simplifies to mvn(, ), where denotes the identity matrix

Table 61.40: Multinomial Distribution

 PROC specification multinom(), where and , for Density , where Parameter restriction with all Range , nonnegative integers Mean