Learn R Programming

TeachingDemos (version 2.13)

hpd: Compute Highest Posterior Density Intervals

Description

Compute the Highest Posterior Density Interval (HPD) from an inverse density function (hpd) or a vector of realizations of the distribution (emp.hpd).

Usage

hpd(posterior.icdf, conf=0.95, tol=0.00000001,...)

emp.hpd(x, conf=0.95, lower, upper)

Value

A vector of length 2 with the lower and upper limits of the interval.

Arguments

posterior.icdf

Function, the inverse cdf of the posterior distribution (usually a function whose name starts with 'q').

x

A vector of realizations from the posterior distribution.

conf

Scalar, the credible level desired.

tol

Scalar, the tolerance for optimize.

...

Additional arguments to posterior.icdf.

lower

Optional lower bound on support of x.

upper

Optional upper bound on support of x.

Author

Greg Snow 538280@gmail.com

Details

These functions compute the highest posterior density intervals (sometimes called minimum length confidence intervals) for a Bayesian posterior distribution. The hpd function is used when you have a function representing the inverse cdf (the common case with conjugate families). The emp.hpd function is used when you have realizations of the posterior (when you have results from an MCMC run).

See Also

hdr in the hdrcde package.

Examples

Run this code

hpd(qbeta, shape1=50, shape2=250)

tmp <- rbeta(10000, 50, 250)
emp.hpd(tmp)

Run the code above in your browser using DataLab