mcmc.diagnostics {ergm} | R Documentation |
Conduct MCMC diagnostics on a model fit
Description
This function prints diagnistic information and creates simple diagnostic plots for MCMC sampled statistics produced from a fit.
Usage
mcmc.diagnostics(object, ...)
## S3 method for class 'ergm'
mcmc.diagnostics(
object,
center = TRUE,
esteq = TRUE,
vars.per.page = 3,
which = c("plots", "texts", "summary", "autocorrelation", "crosscorrelation", "burnin"),
compact = FALSE,
...
)
Arguments
object |
A model fit object to be diagnosed. |
... |
Additional arguments, to be passed to plotting functions. |
center |
Logical: If TRUE, center the samples on the observed statistics. |
esteq |
Logical: If TRUE, for statistics corresponding to
curved ERGM terms, summarize the curved statistics by their
negated estimating function values (evaluated at the MLE of any curved
parameters) (i.e., |
vars.per.page |
Number of rows (one variable per row) per
plotting page. Ignored if |
which |
A character vector specifying which diagnostics to plot and/or print. Defaults to all of the below if meaningful:
Partial matching is supported. (E.g., |
compact |
Numeric: For diagnostics that print variables in
columns (e.g. correlations, hypothesis test p-values), try to
abbreviate variable names to this many characters and round the
numbers to |
Details
A pair of plots are produced for each statistic:a trace of the sampled output statistic values on the left and density estimate for each variable in the MCMC chain on the right. Diagnostics printed to the console include correlations and convergence diagnostics.
For ergm()
specifically, recent changes in the
estimation algorithm mean that these plots can no longer be used
to ensure that the mean statistics from the model match the
observed network statistics. For that functionality, please use
the GOF command: gof(object, GOF=~model)
.
In fact, an ergm output object
contains the matrix of
statistics from the MCMC run as component $sample
. This
matrix is actually an object of class mcmc
and can be used
directly in the coda
package to assess MCMC
convergence. Hence all MCMC diagnostic methods available in
coda
are available directly. See the examples and
https://www.mrc-bsu.cam.ac.uk/software/bugs/the-bugs-project-winbugs/coda-readme/.
More information can be found by looking at the documentation of
ergm
.
Methods (by class)
-
mcmc.diagnostics(ergm)
:
References
Raftery, A.E. and Lewis, S.M. (1995). The number of iterations, convergence diagnostics and generic Metropolis algorithms. In Practical Markov Chain Monte Carlo (W.R. Gilks, D.J. Spiegelhalter and S. Richardson, eds.). London, U.K.: Chapman and Hall.
This function is based on the coda
package It is based on the the R
function raftery.diag
in coda
. raftery.diag
, in turn,
is based on the FORTRAN program gibbsit
written by Steven Lewis which
is available from the Statlib archive.
See Also
ergm
, network
package, coda
package,
summary.ergm
Examples
## Not run:
#
data(florentine)
#
# test the mcmc.diagnostics function
#
gest <- ergm(flomarriage ~ edges + kstar(2))
summary(gest)
#
# Plot the probabilities first
#
mcmc.diagnostics(gest)
#
# Use coda directly
#
library(coda)
#
plot(gest$sample, ask=FALSE)
#
# A full range of diagnostics is available
# using codamenu()
#
## End(Not run)