Learn R Programming

ergm (version 4.10.1)

Fit, Simulate and Diagnose Exponential-Family Models for Networks

Description

An integrated set of tools to analyze and simulate networks based on exponential-family random graph models (ERGMs). 'ergm' is a part of the Statnet suite of packages for network analysis. See Hunter, Handcock, Butts, Goodreau, and Morris (2008) and Krivitsky, Hunter, Morris, and Klumb (2023) .

Copy Link

Version

Install

install.packages('ergm')

Monthly Downloads

6,256

Version

4.10.1

License

GPL-3 + file LICENSE

Maintainer

Pavel N. Krivitsky

Last Published

August 27th, 2025

Functions in ergm (4.10.1)

CondOutDegreeDist-ergmProposal

MHp for odegreedist constraints
DiscUnif-ergmReference

Discrete Uniform reference
Curve-ergmTerm

Impose a curved structure on term parameters
Exp-ergmTerm

Exponentiate a network's statistic
For-ergmTerm

A for operator for terms
Dyads-ergmConstraint

Constrain fixed or varying dyad-independent terms
DistRLE-ergmProposal

TODO
DiscUnif-ergmProposal

TODO
ConstantEdges-ergmProposal

MHp for edges constraints
Label-ergmTerm

Modify terms' coefficient names
Log-ergmTerm

Take a natural logarithm of a network's statistic
NodematchFilter-ergmTerm

Filtering on nodematch
DiscUnif2-ergmProposal

TODO
HammingTNT-ergmProposal

TODO
Unif-ergmProposal

TODO
DiscUnifNonObserved-ergmProposal

TODO
Project-ergmTerm

Evaluation on a projection of a bipartite network
F-ergmTerm

Filtering on arbitrary one-term model
S-ergmTerm

Evaluation on an induced subgraph
SPDyad-ergmProposal

A proposal alternating between TNT and a triad-focused proposal
HammingConstantEdges-ergmProposal

TODO
Offset-ergmTerm

Terms with fixed coefficients
Prod-ergmTerm

A product (or an arbitrary power combination) of one or more formulas
Symmetrize-ergmTerm

Evaluation on symmetrized (undirected) network
TNT-ergmProposal

Default MH algorithm
StdNormal-ergmProposal

TODO
asymmetric-ergmTerm

Asymmetric dyads
atleast-ergmTerm

Number of dyads with values greater than or equal to a threshold
as.network.numeric

Create a Simple Random network of a Given Size
b1factor-ergmTerm

Factor attribute effect for the first mode in a bipartite network
Unif-ergmReference

Continuous Uniform reference
absdiff-ergmTerm

Absolute difference in nodal attribute
approx.hotelling.diff.test

Approximate Hotelling T^2-Test for One or Two Population Means
atmost-ergmTerm

Number of dyads with values less than or equal to a threshold
b1dsp-ergmTerm

Dyadwise shared partners for dyads in the first bipartition
UnifNonObserved-ergmProposal

TODO
b1degrees-ergmConstraint

Preserve the actor degree for bipartite networks
attrcov-ergmTerm

Edge covariate by attribute pairing
b1degree-ergmTerm

Degree for the first mode in a bipartite network
b1factordistinct-ergmTerm

Number of distinct neighbor types for the first node
b1cov-ergmTerm

Main effect of a covariate for the first mode in a bipartite network
anova.ergm

ANOVA for ERGM Fits
b2mindegree-ergmTerm

Minimum degree for the second mode in a bipartite network
b2covrange-ergmTerm

Range of covariate values for neighbors of a mode-2 node
b1nodematch-ergmTerm

Nodal attribute-based homophily effect for the first mode in a bipartite network
b1concurrent-ergmTerm

Concurrent node count for the first mode in a bipartite network
b2cov-ergmTerm

Main effect of a covariate for the second mode in a bipartite network
b1mindegree-ergmTerm

Minimum degree for the first mode in a bipartite network
b2nodematch-ergmTerm

Nodal attribute-based homophily effect for the second mode in a bipartite network
as.rlebdm.ergm_conlist

Extract dyad-level ERGM constraint information into an rlebdm object
b1sociality-ergmTerm

Degree
b1star-ergmTerm

\(k\)-stars for the first mode in a bipartite network
b2sociality-ergmTerm

Degree
b2factordistinct-ergmTerm

Number of distinct neighbor types for the second mode
b1starmix-ergmTerm

Mixing matrix for \(k\)-stars centered on the first mode of a bipartite network
StdNormal-ergmReference

Standard Normal reference
b2factor-ergmTerm

Factor attribute effect for the second mode in a bipartite network
b2star-ergmTerm

\(k\)-stars for the second mode in a bipartite network
blockdiag-ergmConstraint

Block-diagonal structure constraint
blocks-ergmConstraint

Constrain blocks of dyads defined by mixing type on a vertex attribute.
call.ErgmTerm

Locate and call an ERGM term initialization function.
check.ErgmTerm

Ensures an Ergm Term and its Arguments Meet Appropriate Conditions
Sum-ergmTerm

A sum (or an arbitrary linear combination) of one or more formulas
altkstar-ergmTerm

Alternating \(k\)-star
absdiffcat-ergmTerm

Categorical absolute difference in nodal attribute
b2starmix-ergmTerm

Mixing matrix for \(k\)-stars centered on the second mode of a bipartite network
b2twostar-ergmTerm

Two-star census for central nodes centered on the second mode of a bipartite network
coincidence-ergmTerm

Coincident node count for the second mode in a bipartite (aka two-mode) network
b2dsp-ergmTerm

Dyadwise shared partners for dyads in the second bipartition
b2degrees-ergmConstraint

Preserve the receiver degree for bipartite networks
cohab

Target statistics and model fit to a hypothetical 50,000-node network population with 50,000 nodes based on egocent
b1twostar-ergmTerm

Two-star census for central nodes centered on the first mode of a bipartite network
b1degrange-ergmTerm

Degree range for the first mode in a bipartite network
b1covrange-ergmTerm

Range of covariate values for neighbors of a mode-1 node
b2concurrent-ergmTerm

Concurrent node count for the second mode in a bipartite network
b2degrange-ergmTerm

Degree range for the second mode in a bipartite network
b2degree-ergmTerm

Degree for the second mode in a bipartite network
bd-ergmConstraint

Constrain maximum and minimum vertex degree
balance-ergmTerm

Balanced triads
cycle-ergmTerm

k-Cycle Census
control.simulate.ergm

Auxiliary for Controlling ERGM Simulation
control.gof

Auxiliary for Controlling ERGM Goodness-of-Fit Evaluation
control.san

Auxiliary for Controlling SAN
control.ergm.bridge

Auxiliaries for Controlling ergm.bridge.llr() and logLik.ergm()
control.ergm

Auxiliary function for fine-tuning ERGM fitting.
cyclicalties-ergmTerm

Cyclical ties
degrange-ergmTerm

Degree range
concurrent-ergmTerm

Concurrent node count
degcrossprod-ergmTerm

Degree Cross-Product
concurrentties-ergmTerm

Concurrent tie count
degree1.5-ergmTerm

Degree to the 3/2 power
degree-ergmTerm

Degree
ctriple-ergmTerm

Cyclic triples
degreedist-ergmConstraint

Preserve the degree distribution of the given network
cyclicalweights-ergmTerm

Cyclical weights
degcor-ergmTerm

Degree Correlation
dsp-ergmTerm

Directed dyadwise shared partners
degreedist

Computes and Returns the Degree Distribution Information for a Given Network
diff-ergmTerm

Difference
dyadnoise-ergmConstraint

A soft constraint to adjust the sampled distribution for dyad-level noise with known perturbation probabilities
edgecov-ergmTerm

Edge covariate
dyadcov-ergmTerm

Dyadic covariate
dyadnoiseTNT-ergmProposal

TODO
edges-ergmConstraint

Preserve the edge count of the given network
dyadnoise-ergmProposal

TODO
edges-ergmTerm

Number of edges in the network
egocentric-ergmConstraint

Preserve values of dyads incident on vertices with given attribute
ergm-deprecated

Functions that will no longer be supported in future releases of the package
ergm-defunct

Functions that have been removed from this package
density-ergmTerm

Density
degrees-ergmConstraint

Preserve the degree of each vertex of the given network
.dyads-ergmConstraint

A meta-constraint indicating handling of arbitrary dyadic constraints
ecoli

Two versions of an E. Coli network dataset
ergm-options

Global options and term options for the ergm package
ergm-package

ergm: Fit, Simulate and Diagnose Exponential-Family Models for Networks
equalto-ergmTerm

Number of dyads with values equal to a specific value (within tolerance)
enformulate.curved-deprecated

Convert a curved ERGM into a form suitable as initial values for the same ergm. Deprecated in 4.0.0.
ergm-internal

Internal ergm Objects
ergm-errors

Sensible error and warning messages by ergm initializers
ergm.design

Obtain the set of informative dyads based on the network structure.
ergm-parallel

Parallel Processing in the ergm Package
ergm.getnetwork

Acquire and verify the network from the LHS of an ergm formula and verify that it is a valid network.
ergm.godfather

A function to apply a given series of changes to a network.
ergm.bridge.llr

Bridge sampling to evaluate ERGM log-likelihoods and log-likelihood ratios
ergm

Exponential-Family Random Graph Models
ergm.estfun

Compute the Sample Estimating Function Values of an ERGM.
ergm.eta

Operations to map curved ergm() parameters onto canonical parameters
ergm.allstats

Calculate all possible vectors of statistics on a network for an ERGM
ergm.geodistdist

Calculate geodesic distance distribution for a network or edgelist
ergm_Cstate_clear

ergmKeyword

Keywords defined for Exponential-Family Random Graph Models
ergm.mple

Find a maximizer to the psuedolikelihood function
ergmProposal

Metropolis-Hastings Proposal Methods for ERGM MCMC
ergmHint

MCMC Hints for Exponential-Family Random Graph Models
ergmReference

Reference Measures for Exponential-Family Random Graph Models
ergmAuxiliary

Auxiliaries to Facilitate Terms in Exponential Family Random Graph Models
ergmConstraint

Sample Space Constraints for Exponential-Family Random Graph Models
ergmTerm

Terms used in Exponential Family Random Graph Models
ergmMPLE

ERGM Predictors and response for logistic regression calculation of MPLE
ergm_MCMC_sample

Internal Function to Sample Networks and Network Statistics
ergm_bd_init

Initializes the parameters to bound degree during sampling
ergm_cutoff_message

Helper function for constructing gw* cutoff error messages
ergm_model

Internal representation of an ergm network model
ergm_dyadgen_select

A helper function to select and construct a dyad generator for C.
ergm_SAN_slave

Internal Function to Perform Simulated Annealing
ergm_edgecov_args

A common pattern for obtaining an edge covariate
ergm_keyword

Dynamic ERGM keyword registry
ergm_GWDECAY

Curved settings for geometric weights for the gw* terms
ergm_mk_std_op_namewrap

Combine an operator term's and a subterm's name in a standard fashion.
ergm_plot.mcmc.list

Plot MCMC list using lattice package graphics
ergm_proposal_table

Table mapping reference,constraints, etc. to ERGM Metropolis-Hastings proposals
ergm_state_cache

A rudimentary cache for large objects
ergm_symmetrize

Return a symmetrized version of a binary network
ergm_preprocess_response

Update the network and the response argument.
ergmlhs

An API for specifying aspects of an ergm model in the LHS/basis network.
ergm_propagate_ext.encode

Extended states for submodels
esp-ergmTerm

Directed edgewise shared partners
fixallbut-ergmConstraint

Preserve the dyad status in all but the given edges
ergm_state

A Representation of ERGM state
fixedas-ergmConstraint

Fix specific dyads
fix.curved

Convert a curved ERGM into a corresponding "fixed" ERGM.
faux.dixon.high

Faux dixon High School as a network object
faux.magnolia.high

Goodreau's Faux Magnolia High School as a network object
faux.mesa.high

Goodreau's Faux Mesa High School as a network object
florentine

Florentine Family Marriage and Business Ties Data as a "network" object
faux.desert.high

Faux desert High School as a network object
gwdsp-ergmTerm

Geometrically weighted dyadwise shared partner distribution
ergm_proposal

Functions to initialize the ergm_proposal object
get.node.attr

Retrieve and check assumptions about vertex attributes (nodal covariates) in a network
g4

Goodreau's four node network as a "network" object
gof

Conduct Goodness-of-Fit Diagnostics on a Exponential Family Random Graph Model
gwb2degree-ergmTerm

Geometrically weighted degree distribution for the second mode in a bipartite network
gwb1dsp-ergmTerm

Geometrically weighted dyadwise shared partner distribution for dyads in the first bipartition
gwesp-ergmTerm

Geometrically weighted edgewise shared partner distribution
greaterthan-ergmTerm

Number of dyads with values strictly greater than a threshold
gwdegree-ergmTerm

Geometrically weighted degree distribution
gwb1degree-ergmTerm

Geometrically weighted degree distribution for the first mode in a bipartite network
gwb2dsp-ergmTerm

Geometrically weighted dyadwise shared partner distribution for dyads in the second bipartition
geweke.diag.mv

Multivariate version of coda's coda::geweke.diag().
idegree-ergmTerm

In-degree
idegree1.5-ergmTerm

In-degree to the 3/2 power
gwidegree-ergmTerm

Geometrically weighted in-degree distribution
hamming-ergmTerm

Hamming distance
idegreedist-ergmConstraint

Preserve the indegree distribution
gwodegree-ergmTerm

Geometrically weighted out-degree distribution
gwnsp-ergmTerm

Geometrically weighted non-edgewise shared partner distribution
idegrange-ergmTerm

In-degree range
idegrees-ergmConstraint

Preserve indegree for directed networks
isolatededges-ergmTerm

Isolated edges
isolates-ergmTerm

Isolates
is.curved

Testing for curved exponential family
hamming-ergmConstraint

Preserve the hamming distance to the given network (BROKEN: Do NOT Use)
istar-ergmTerm

In-stars
is.valued

Function to check whether an ERGM fit or some aspect of it is valued
is.dyad.independent

Testing for dyad-independence
kapferer

Kapferer's tailor shop data
ininterval-ergmTerm

Number of dyads whose values are in an interval
intransitive-ergmTerm

Intransitive triads
localtriangle-ergmTerm

Triangles within neighborhoods
logLikNull

Calculate the null model likelihood
m2star-ergmTerm

Mixed 2-stars, a.k.a 2-paths
kstar-ergmTerm

\(k\)-stars
molecule

Synthetic network with 20 nodes and 28 edges
meandeg-ergmTerm

Mean vertex degree
mm-ergmTerm

Mixing matrix cells and margins
logLik.ergm

A logLik() method for ergm fits.
mcmc.diagnostics

Conduct MCMC diagnostics on a model fit
nearsimmelian-ergmTerm

Near simmelian triads
mutual-ergmTerm

Mutuality
nodeicov-ergmTerm

Main effect of a covariate for in-edges
nodecovar-ergmTerm

Covariance of undirected dyad values incident on each actor
nodefactor-ergmTerm

Factor attribute effect
nodal_attributes

Specifying nodal attributes and their levels
nodeicovar-ergmTerm

Covariance of in-dyad values incident on each actor
nodefactordistinct-ergmTerm

Number of distinct neighbor types
network.list

A convenience container for a list of network objects, output by simulate.ergm() among others.
nodecovrange-ergmTerm

Range of covariate values for neighbors of a node
nodecov-ergmTerm

Main effect of a covariate
nodal_attributes-API

Helper functions for specifying nodal attribute levels
nodemix-ergmTerm

Nodal attribute mixing
nodeifactordistinct-ergmTerm

Number of distinct in-neighbor types
nodematch-ergmTerm

Uniform homophily and differential homophily
nodeofactor-ergmTerm

Factor attribute effect for out-edges
nodeocovar-ergmTerm

Covariance of out-dyad values incident on each actor
nodeifactor-ergmTerm

Factor attribute effect for in-edges
nodeocov-ergmTerm

Main effect of a covariate for out-edges
nodeofactordistinct-ergmTerm

Number of distinct out-neighbor types
nodeocovrange-ergmTerm

Range of covariate values for out-neighbors of a node
nodeicovrange-ergmTerm

Range of covariate values for in-neighbors of a node
odegrees-ergmConstraint

Preserve outdegree for directed networks
observed-ergmConstraint

Preserve the observed dyads of the given network
odegree-ergmTerm

Out-degree
odegrange-ergmTerm

Out-degree range
opentriad-ergmTerm

Open triads
nsp-ergmTerm

Directed non-edgewise shared partners
nvattr.copy.network

Copy network- and vertex-level attributes between two network objects
odegree1.5-ergmTerm

Out-degree to the 3/2 power
odegreedist-ergmConstraint

Preserve the outdegree distribution
nparam

Length of the parameter vector associated with an object or with its terms.
rank_test.ergm

A lack-of-fit test for ERGMs
samplk

Longitudinal networks of positive affection within a monastery as a "network" object
ostar-ergmTerm

k-Outstars
predict.formula

ERGM-based tie probabilities
receiver-ergmTerm

Receiver effect
rlebdm

RLE-Compressed Boolean Dyad Matrix
sampson

Cumulative network of positive affection within a monastery as a "network" object
param_names

Names of the parameters associated with an object.
randomtoggle-ergmProposal

Propose a randomly selected dyad to toggle
san

Generate networks with a given set of network statistics
simulate.formula

A simulate Method for formula objects that dispatches based on the Left-Hand Side
smallerthan-ergmTerm

Number of dyads with values strictly smaller than a threshold
search.ergmTerms

Search ERGM terms, constraints, references, hints, and proposals
sender-ergmTerm

Sender effect
simmelianties-ergmTerm

Ties in simmelian triads
smalldiff-ergmTerm

Number of ties between actors with similar attribute values
simulate.ergm

Draw from the distribution of an Exponential Family Random Graph Model
snctrl

Statnet Control
simmelian-ergmTerm

Simmelian triads
shrink_into_CH

Identify the position of a point relative to the convex hull of a set of points
sparse-ergmHint

Sparse network
summary.ergm

Summarizing ERGM Model Fits
sum-ergmTerm

Sum of dyad values (optionally taken to a power)
spectrum0.mvar

Multivariate version of coda's spectrum0.ar().
strat-ergmHint

Stratify Proposed Toggles by Mixing Type on a Vertex Attribute
sociality-ergmTerm

Undirected degree
summary.ergm_model

Evaluate network summary statistics from an initialized ergm model
.spcache.net-ergmAuxiliary

Shared Partner Cache
summary.formula

Calculation of network or graph statistics or other attributes specified on a formula
summary_formula

Dispatching a summary function based on the class of the LHS of a formula.
transitiveweights-ergmTerm

Transitive weights
to_ergm_Cdouble

Methods to serialize objects into numeric vectors for passing to the C side.
triangle-ergmTerm

Triangles
transitive-ergmTerm

Transitive triads
triadic-ergmHint

Network with strong clustering (triad-closure) effects
tripercent-ergmTerm

Triangle percentage
triadcensus-ergmTerm

Triad census
ttriple-ergmTerm

Transitive triples
threetrail-ergmTerm

Three-trails
transitiveties-ergmTerm

Transitive ties
twopath-ergmTerm

2-Paths
wtd.median

Weighted Median
wrap.ergm_model

Wrap a submodel's curved, empty network statistics, and extended state (read-only) specification (if present) for output from an InitErgmTerm or InitWtErgmTerm.
update.network

Update the edges in a network based on a matrix
CondInDegree-ergmProposal

MHp for idegree constraints
Bernoulli-ergmReference

Bernoulli reference
B-ergmTerm

Wrap binary terms for use in valued models
CondInDegreeDist-ergmProposal

MHp for idegreedist constraints
CondDegreeMix-ergmProposal

MHp for degree mix constraints
CondB2Degree-ergmProposal

MHp for b2degree constraints
CondB1Degree-ergmProposal

MHp for b1degree constraints
CondDegree-ergmProposal

MHp for degree constraints
CondDegreeDist-ergmProposal

MHp for degreedist constraints
BDStratTNT-ergmProposal

TNT proposal with degree bounds, stratification, and a blocks constraint
CondOutDegree-ergmProposal

MHp for odegree constraints