Raftery and Lewis (1992) introduced an MCMC diagnostic that estimates the number of iterations needed for a given level of precision in posterior samples, as well as estimating burn-in, when quantiles are the posterior summaries of interest.

`Raftery.Diagnostic(x, q=0.025, r=0.005, s=0.95, eps=0.001)`

x

This required argument accepts an object of class
`demonoid`

. It attempts to use `Posterior2`

, but when this
is missing it uses `Posterior1`

.

q

This is the quantile to be estimated.

r

This is the desired margin of error of the estimate, also called the accuracy.

s

This is the probability of obtaining an estimate in the interval (q-r, q+r).

eps

This is the precision required for the estimate of time to convergence.

The `Raftery.Diagnostic`

function returns an object of class
`raftery`

that is list. A print method is available for objects
of this class. The list has the following components:

These are the time-series parameters of the posterior
samples in `x`

.

This is a vector containing the parameters `q`

,
`r`

, and `s`

.

This is the number of iterations in the posterior
samples in `x`

.

This is a 3-dimensional array containing the results: \(M\) is the suggested burn-in, \(N\) is the suggested number of iterations, \(Nmin\) is the suggested number of iterations based on zero autocorrelation, and \(I = (M+N)/Nmin\) is the "dependence factor". The dependence factor is interpreted as the proportional increase in the number of iterations attributable to autocorrelation. Highly autocorrelated chains (> 5) are worrisome, and may be due to influential initial values, parameter correlations, or poor mixing.

In this MCMC diagnostic, a posterior quantile \(q\) of interest is
specified. Next, an acceptable tolerance \(r\) is specified for
\(q\), which means that it is desired to measure \(q\) with an
accuracy of +/- \(r\). Finally, the user selects a probability
\(s\), which is the probability of being within the interval
\((q-r, q+r)\). The `Raftery.Diagnostic`

then estimates the
number \(N\) of iterations and the number \(M\) of burn-in
iterations that are necessary to satisfy the specified conditions
regarding quantile \(q\).

The diagnostic was designed to test a short, initial update, in which the chains were called pilot chains, and the application was later suggested for iterative use after any update as a general method for pursuing convergence (Raftery and Lewis, 1996).

Results of the `Raftery.Diagnostic`

differ depending on the
chosen quantile \(q\). Estimates are conservative, so more
iterations are suggested than necessary.

Raftery, A.E. and Lewis, S.M. (1992). "How Many Iterations in the
Gibbs Sampler?" In *Bayesian Statistics*, 4 (J.M. Bernardo, J.O.
Berger, A.P. Dawid and A.F.M. Smith, eds.). Oxford, U.K.: Oxford
University Press, p. 763--773.

Raftery, A.E. and Lewis, S.M. (1992). "One Long Run with
Diagnostics: Implementation Strategies for Markov chain Monte Carlo".
*Statistical Science*, 7, p. 493--497.

Raftery, A.E. and Lewis, S.M. (1996). "Implementing MCMC".
*In* Practical Markov Chain Monte Carlo (W.R. Gilks,
D.J. Spiegelhalter and S. Richardson, eds.). Chapman and Hall:
Baton Rouge, FL.

`burnin`

,
`LaplacesDemon`

,
`print.raftery`

, and
`Thin`

.

```
# NOT RUN {
#library(LaplacesDemon)
###After updating with LaplacesDemon, do:
#rd <- Raftery.Diagnostic(Fit)
#print(rd)
# }
```

Run the code above in your browser using DataLab