The Cumulative Sample Function (CSF) is a visual MCMC diagnostic in
which the user may select a measure (such as a variable, summary
statistic, or other diagnostic), and observe a plot of how the measure
changes over cumulative posterior samples from MCMC, such as the
output of LaplacesDemon
. This may be considered to be a
generalized extension of the cumuplot
in the coda package,
which is a more restrictive form of the cusum diagnostic introduced by
Yu and Myckland (1998).
Yu and Myckland (1998) suggest that CSF plots should be examined after
traditional trace plots seem convergent, and assert that faster mixing
chains (which are more desirable) result in CSF plots that are more
`hairy' (as opposed to smooth), though this is subjective and has been
debated. The LaplacesDemon
package neither supports nor
contradicts the suggestion of mixing and `hairiness', but suggests
that CSF plots may be used to provide additional information about a
chain. For example, a user may decide on a practical
burnin
given when a conditional mean obtains a certain
standard error.
CSF(x, name, method="Quantiles", quantiles=c(0.025,0.500,0.975), output=FALSE)
This is a vector of posterior samples from MCMC.
This is an optional name for vector x
, and is input
as a quoted string, such as name="theta"
.
This is a measure that will be observed over the course
of cumulative samples of x
. It defaults to
method="Quantiles"
, and optional methods include: "ESS"
,
"Geweke.Diagnostic"
, "HPD"
, "is.stationary"
,
"Kurtosis"
, "MCSE"
, "MCSE.bm"
,
"MCSE.sv"
, "Mean"
, "Mode"
, "N.Modes"
,
"Precision"
, "Quantiles"
, and "Skewness"
.
This optional argument applies only when
method="Quantiles"
, in which case this vector indicates the
probabilities that will be observed. It defaults to the median and
95% probability interval bounds (see p.interval
for
more information).
Logical. If output=TRUE
, then the results of the
measure over the course of the cumulative samples will be output as
an object, either a vector or matrix, depending on the method
argument. The output
argument defaults to FALSE
.
When method="ESS"
, the effective sample size (ESS) is observed
as a function of the cumulative samples of x
. For more
information, see the ESS
function.
When method="Geweke.Diagnostic"
, the Z-score output of the
Geweke diagnostic is observed as a function of the cumulative samples
of x
. For more information, see the
Geweke.Diagnostic
function.
When method="HPD"
, the Highest Posterior Density (HPD) interval
is observed as a function of the cumulative samples of x
. For
more information, see the p.interval
function.
When method="is.stationary"
, stationarity is logically
tested and the result is observed as a function of the cumulative
samples of x
. For more information, see the
is.stationary
function.
When method="Kurtosis"
, kurtosis is observed as a function of
the cumulative samples of x
.
When method="MCSE"
, the Monte Carlo Standard Error (MCSE)
estimated with the IMPS
method is observed as a function of
the cumulative samples of x
. For more information, see the
MCSE
function.
When method="MCSE.bm"
, the Monte Carlo Standard Error (MCSE)
estimated with the batch.means
method is observed as a
function of the cumulative samples of x
. For more information,
see the MCSE
function.
When method="MCSE.sv"
, the Monte Carlo Standard Error (MCSE)
estimated with the sample.variance
method is observed as a
function of the cumulative samples of x
. For more information,
see the MCSE
function.
When method="Mean"
, the mean is observed as a function of
the cumulative samples of x
.
When method="Mode"
, the estimated mode is observed as a
function of the cumulative samples of x
. For more information,
see the Mode
function.
When method="N.Modes"
, the estimated number of modes is
observed as a function of the cumulative samples of x
. For
more information, see the Modes
function.
When method="Precision"
, the precision (inverse variance) is
observed as a function of the cumulative samples of x
.
When method="Quantiles"
, the quantiles selected with the
quantiles
argument are observed as a function of the
cumulative samples of x
.
When method="Skewness"
, skewness is observed as a function of
the cumulative samples of x
.
Yu, B. and Myckland, P. (1997). "Looking at Markov Samplers through Cusum Path Plots: A Simple Diagnostic Idea". Statistics and Computing, 8(3), p. 275--286.
burnin
,
ESS
,
Geweke.Diagnostic
,
is.stationary
,
LaplacesDemon
,
MCSE
,
Mode
,
Modes
, and
p.interval
.
# NOT RUN {
#Commented-out because of run-time for package builds
#library(LaplacesDemon)
#x <- rnorm(1000)
#CSF(x, method="ESS")
#CSF(x, method="Geweke.Diagnostic")
#CSF(x, method="HPD")
#CSF(x, method="is.stationary")
#CSF(x, method="Kurtosis")
#CSF(x, method="MCSE")
#CSF(x, method="MCSE.bm")
#CSF(x, method="MCSE.sv")
#CSF(x, method="Mean")
#CSF(x, method="Mode")
#CSF(x, method="N.Modes")
#CSF(x, method="Precision")
#CSF(x, method="Quantiles")
#CSF(x, method="Skewness")
# }
Run the code above in your browser using DataLab