This function prints diagnistic information and creates simple diagnostic plots for the MCMC sampled statistics produced from a fit.
# S3 method for ergm
mcmc.diagnostics (object,
center=TRUE,
esteq=TRUE,
vars.per.page=3,
…)
# S3 method for mcmc.list.ergm
plot(x,
main = NULL,
vars.per.page = 3,
…)
An ergm object. See documentation for
ergm
.
Logical: If TRUE, ; center the samples on the observed statistics.
Logical: If TRUE, for statistics corresponding to curved ERGM terms, summarize the curved statistics by their estimating equation values (evaluated at the MLE of any curved parameters) (i.e., \(\eta'_{I}(\hat{\theta})\cdot g_{I}(y)\) for \(I\) being indices of the canonical parameters in question), rather than the canonical (sufficient) vectors of the curved statistics (\(g_{I}(y)\)).
Number of rows (one variable per row)
per plotting page. Ignored
if latticeExtra
package is not installed.
an mcmc.list object containing the mcmc diagnostic samples
character, main plot heading title
Additional arguments, to be passed to plotting functions.
mcmc.diagnostics.ergm
returns
some degeneracy information, if it is included in the original
object. The function is mainly used for its side effect, which is
to produce plots and summary output based on those plots.
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.
Recent changes in the ergm 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
http://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
.
Raftery, A.E. and Lewis, S.M. (1992). One long run with diagnostics: Implementation strategies for Markov chain Monte Carlo. Statistical Science, 7, 493-497.
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.
ergm
, network
package,
coda
package,
summary.ergm
# 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()
#
# }
Run the code above in your browser using DataLab