Learn R Programming

ergm (version 2.0-3)

gof: Conduct Goodness-of-Fit Diagnostics on a Exponential Family Random Graph Model

Description

gof calculates $p$-values for geodesic distance, degree, and reachability summaries to diagnose the goodness-of-fit of exponential family random graph models. See ergm for more information on these models.

Usage

## S3 method for class 'default':
gof(object,\dots)
## S3 method for class 'formula':
gof(formula, \dots, theta0=NULL,
         nsim=100, burnin=10000, interval=1000,
         GOF=~degree+espartners+distance,
         constraints=~.,
         control=control.gof.formula(),
         seed=NULL,
         verbose=FALSE)
## S3 method for class 'ergm':
gof(object, \dots,
         nsim=100,
         GOF=~degree+espartners+distance,
         burnin=10000, interval=1000,
         constraints=NULL,
         control=control.gof.ergm(),
         seed=NULL, 
         theta0=NULL, verbose=FALSE)

Arguments

object
an Robject. Either a formula or an ergm object. See documentation for ergm.
formula
formula; An Rformula object, of the form y ~ , where y is a network object or a matrix that can be coerced to a network object. This specifies the model to simulate from. For the details on the possible
theta0
When given either a formula or an object of class ergm, theta0 are the parameters from which the sample is drawn. By default set to a vector of 0.
nsim
The number of simulations to use for the MCMC $p$-values. This is the size of the sample of graphs to be randomly drawn from the distribution specified by the object on the set of all graphs.
GOF
formula; an Rformula object, of the form ~ specifying the statistics to use to diagnosis the goodness-of-fit of the model. They do not need to be in the model formula specified in formula, and typically
burnin
Number of proposed edge toggles before any MCMC sampling is done. If the model is correct this can be 0. Currently, there is no support for any check of the Markov chain mixing, so burnin should be set to a fairly large number.
interval
Number of proposed edge toggles between sampled statistics. The program prints a warning if too few proposed toggles are being accepted (if the number of proposed toggles between sampled observations ever equals an integral multiple of 100
constraints
A one-sided formula specifying one or more constraints on the support of the distribution of the networks being modeled. See the help for similarly-named argument in ergm for more information. For
control
A list to control parameters, constructed using control.gof.formula or control.gof.ergm (which have different defaults).
seed
integer; random number integer seed. Defaults to NULL to use whatever the state of the random number generater is at the time of the call.
verbose
Provide verbose information on the progress of the simulation.
...
Additional arguments, to be passed to lower-level functions in the future.

Value

Details

A sample of graphs is randomly drawn from the specified model. The first argument is typically the output of a call to ergm and the model used for that call is the one fit.

A plot of the summary measures is plotted. More information can be found by looking at the documentation of ergm.

See Also

ergm, network, simulate.ergm, summary.ergm, plot.gofobject

Examples

Run this code
#
data(florentine)
#
# test the gof.ergm function
#
gest <- ergm(flomarriage ~ edges + kstar(2))
gest
summary(gest)

#
# Plot the probabilities first
#
gofflo <- gof(gest)
gofflo
#
# Place all three on the same page
# with nice margins
#
par(mfrow=c(1,3))
par(oma=c(0.5,2,1,0.5))
#
plot(gofflo)
#
# And now the odds 
#
plot(gofflo, plotlogodds=TRUE)
#
# Use the formula version
#
plot(gof(flomarriage ~ edges + kstar(2), theta0=c(-1.6339, 0.0049)))

Run the code above in your browser using DataLab