R/posterior_interval.R
posterior_interval.Rd
These intervals are often referred to as credible intervals, but we use the term uncertainty intervals to highlight the fact that wider intervals correspond to greater uncertainty. See posterior_interval.stanreg() in the rstanarm package for an example.
posterior_interval(object, ...)
# S3 method for default
posterior_interval(object, prob = 0.9, ...)
The object to use.
Arguments passed to methods. See the methods in the rstanarm package for examples.
A number \(p \in (0,1)\) indicating the desired probability mass to include in the intervals.
posterior_interval()
methods should return a matrix with two
columns and as many rows as model parameters (or a subset of parameters
specified by the user). For a given value of prob
, \(p\), the
columns correspond to the lower and upper \(100p\)\
have the names \(100\alpha/2\)\
\(\alpha = 1-p\). For example, if prob=0.9
is specified (a
\(90\)\
"95%"
, respectively.
The default method just takes object
to be a matrix (one column per
parameter) and computes quantiles, with prob
defaulting to 0.9
.
The rstanarm package (mc-stan.org/rstanarm) for example methods (CRAN, GitHub).
Guidelines and recommendations for developers of R packages interfacing with Stan and a demonstration getting a simple package working can be found in the vignettes included with rstantools and at mc-stan.org/rstantools/articles.
# Default method takes a numeric matrix (of posterior draws)
draws <- matrix(rnorm(100 * 5), 100, 5) # fake draws
colnames(draws) <- paste0("theta_", 1:5)
posterior_interval(draws)
#> 5% 95%
#> theta_1 -1.865365 1.683664
#> theta_2 -1.517411 1.882336
#> theta_3 -1.568718 1.618074
#> theta_4 -1.397015 1.842534
#> theta_5 -1.774352 1.521312
# Also see help("posterior_interval", package = "rstanarm")