R: Raftery and Lewis's diagnostic

Raftery.Diagnostic {LaplacesDemon} | R Documentation

## Raftery and Lewis's diagnostic

### Description

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.

### Usage

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

### Arguments

`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.

### Details

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.

### Value

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:

`tspar` | These are the time-series parameters of the posterior samples in `x`.
`params` | This is a vector containing the parameters `q`, `r`, and `s`.
`Niters` | This is the number of iterations in the posterior samples in `x`.
`resmatrix` | 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.

### Note

The `Raftery.Diagnostic` function was adapted from the `raftery.diag` function in the coda package, which was adapted from the FORTRAN program ‘gibbsit’, written by Steven Lewis.

### References

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.

### See Also

`burnin`, `LaplacesDemon`, `print.raftery`, and `Thin`.

### Examples

    #library(LaplacesDemon)
    ###After updating with LaplacesDemon, do:
    #rd <- Raftery.Diagnostic(Fit)
    #print(rd)

[Package LaplacesDemon version 16.1.1 Index]