ergm
is used to fit linear exponential
random graph models, in which
the probability of a given network, $y$, on a set of nodes is
$\exp{\theta{\cdot}g(y)}/c(\theta)$, where
$g(y)$ is a vector of network statistics for $y$,
$\theta$ is a parameter vector of the same
length and $c(\theta)$ is the
normalizing constant for the distribution. The network statistics $g(y)$ are entered as terms in the
function call to ergm
.
This page describes the possible terms (and hence network statistics).
ergm
are specified by a formula to represent the network and
network statistics. This is done via a formula
, that is,
an Rformula object, of the form
y ~ + ...
,
where y
is a network object or a matrix that can be coerced to a
network
object, and
,
, etc, are each terms chosen
from the list given below.
To create a network object in R, use the network
function,
then add nodal attributes to it using the %v%
operator if necessary.ergm
function allows the user to explore a large number
of potential models for their network data. What follows
is a list of model terms currently available by the program,
and a brief description of each.
In the formula for the model, the model terms are various function-like
calls, some of which require arguments, separated by +
signs. Additional terms can be coded up by users via
the statnetuserterms
package.
The terms currently available are:
absdiff(attrname)
attrname
argument is a character string giving the name of a
quantitative attribute in the network's vertex attribute list. This term
adds one network statistic to the model equaling the sum of
abs(attrname[i]-attrname[j])
for all edges (i,j) in the network. }
absdiffcat(attrname, base=NULL)
attrname
argument is a character string giving the
name of a quantitative attribute in the network's vertex attribute list.
This term adds one statistic for every possible nonzero distinct value of
abs(attrname[i]-attrname[j])
in the network; the value of each such
statistic is the number of edges in the network with the corresponding
absolute difference. The optional base
argument is a vector
indicating which nonzero differences, in order from smallest to largest,
should be omitted from the model (i.e., treated like the zero-difference
category). The base
argument, if used, should contain indices, not
differences themselves. For instance, if the possible values of
abs(attrname[i]-attrname[j])
are 0, 0.5, 3, 3.5, and 10, then to omit
0.5 and 10 one should set base=c(1, 4)
. Note that this term should
generally be used only when the quantitative attribute has a limited number
of possible values; an example is the "Grade"
attribute of the
faux.mesa.high
or faux.magnolia.high
datasets.}
altkstar(lambda, fixed=FALSE)
lambda
. This is
the version given in Snijders et al. (2006). We suggest using the
gwdegree
term instead. The gwdegree
and altkstar
produce mathematically equivalent models, as long as they are used together
with the edges
(or kstar(1)
) term, yet the interpretation of
the gwdegree
parameters is slightly more straightforward than the
interpretation of the altkstar
parameters. For this reason, we
recommend the use of the gwdegree
instead of altkstar
. See
Section 3 and especially equation (13) of
fixed
indicates whether the scale parameter
lambda
is to be fit as a curved exponential family model (see Hunter
and Handcock, 2006). The default is FALSE
, which means the scale
parameter is not fixed and thus the model is a CEF model. This term can only
be used with undirected networks.}
asymmetric
b1concurrent(attrname)
attrname
is a character string giving the name of an attribute in the
network's vertex attribute list. If this is specified then the count is the
number of nodes in the first mode with ties to at least 2 other nodes with
the same value for that attribute as the index node. This term can only be
used with undirected bipartite networks. }
b1degree(d, attrname)
d
argument is a vector of
distinct integers. This term adds one network statistic to the model for
each element in d
; the $i$th such statistic equals the number of
nodes of degree d[i]
in the first mode of a bipartite network, i.e.
with exactly d[i]
edges. The first mode of a bipartite network object
is sometimes known as the "actor" mode. The optional term attrname
is
a character string giving the name of an attribute in the network's vertex
attribute list. If this is specified then the degree count is the number of
nodes with the same value of the attribute as the ego node. This term can
only be used with undirected bipartite networks.}
b1factor(attrname, base=1)
attrname
argument is a character string giving the name of a categorical attribute in
the network's vertex attribute list. This term adds multiple network
statistics to the model, one for each of (a subset of) the unique values of
the attrname
attribute. Each of these statistics gives the number of
times a node with that attribute in the first mode of the network appears in
an edge. The first mode of a bipartite network object is sometimes known as
the "actor" mode. To include all attribute values is usually not a good
idea, because the sum of all such statistics equals the number of edges and
hence a linear dependency would arise in any model also including
edges
. Thus, the base
argument tells which value(s), numbered
in order according to the sort
function, should be omitted. The
default value, one, means that the smallest (i.e., first in sorted order)
attribute value is omitted, making this value the reference category to
which all other values are compared. For example, if the nodefactor("fruit",
base=2:3)
. This term can only be used with undirected bipartite networks.}
b1star(k, attrname)
k
argument is a vector of
distinct integers. This term adds one network statistic to the model for
each element in k
. The $i$th such statistic counts the number of
distinct k[i]
-stars whose center node is in the first mode of the
network. The first mode of a bipartite network object is sometimes known as
the "actor" mode. A $k$-star is defined to be a center node $N$ and
a set of $k$ different nodes ${O_1, \dots, O_k}$ such that the
ties ${N, O_i}$ exist for $i=1, \dots, k$. The optional argument
attrname
is a character string giving the name of an attribute in the
network's vertex attribute list. If this is specified then the count is over
the number of $k$-stars (with center node in the first mode) where all
nodes have the same value of the attribute. This term can only be used for
undirected bipartite networks. Note that b1star(1)
is equal to
b2star(1)
and to edges
. }
b2concurrent(attrname)
attrname
is a character string giving the name of an attribute in the
network's vertex attribute list. If this is specified then the count is the
number of nodes in the second mode with ties to at least 2 other nodes with
the same value for that attribute as the index node. This term can only be
used with undirected bipartite networks. }
b2degree(d, attrname)
d
argument is a vector of
distinct integers. This term adds one network statistic to the model for
each element in d
; the $i$th such statistic equals the number of
nodes of degree d[i]
in the second mode of a bipartite network, i.e.
with exactly d[i]
edges. The second mode of a bipartite network
object is sometimes known as the "event" mode. The optional term
attrname
is a character string giving the name of an attribute in the
network's vertex attribute list. If this is specified then the degree count
is the number of nodes with the same value of the attribute as the ego node.
This term can only be used with undirected bipartite networks.}
b2factor(attrname, base=1)
attrname
argument is a character string giving the name of a categorical attribute in
the network's vertex attribute list. This term adds multiple network
statistics to the model, one for each of (a subset of) the unique values of
the attrname
attribute. Each of these statistics gives the number of
times a node with that attribute in the second mode of the network appears
in an edge. The second mode of a bipartite network object is sometimes known
as the "event" mode. To include all attribute values is usually not a good
idea, because the sum of all such statistics equals the number of edges and
hence a linear dependency would arise in any model also including
edges
. Thus, the base
argument tells which value(s), numbered
in order according to the sort
function, should be omitted. The
default value, one, means that the smallest (i.e., first in sorted order)
attribute value is omitted, making this value the reference category to
which all other values are compared. For example, if the nodefactor("fruit",
base=2:3)
. This term can only be used with undirected bipartite networks.}
b2star(k, attrname)
k
argument is a vector of
distinct integers. This term adds one network statistic to the model for
each element in k
. The $i$th such statistic counts the number of
distinct k[i]
-stars whose center node is in the second mode of the
network. The second mode of a bipartite network object is sometimes known as
the "event" mode. A $k$-star is defined to be a center node $N$ and
a set of $k$ different nodes ${O_1, \dots, O_k}$ such that the
ties ${N, O_i}$ exist for $i=1, \dots, k$. The optional argument
attrname
is a character string giving the name of an attribute in the
network's vertex attribute list. If this is specified then the count is over
the number of $k$-stars (with center node in the second mode) where all
nodes have the same value of the attribute. This term can only be used for
undirected bipartite networks. Note that b2star(1)
is equal to
b1star(1)
and to edges
. }
balance
102
and 300
. For details about triad types, see
triad.classify
in the sna
package. For an
undirected graph the balanced triads are those with an even number of ties
(i.e., 0 and 2).}
concurrent(attrname)
attrname
is a character string
giving the name of an attribute in the network's vertex attribute list. If
this is specified then the count is the number of nodes with ties to at least 2
other nodes with the same value for that attribute as the index node. This term
can only be used with undirected networks. }
ctriple(attrname)
triangle
is equal to
ttriple+ctriple
, so at most two of these three terms can be in a
model. The optional argument attrname
is a character string giving
the name of an attribute in the network's vertex attribute list. If this is
specified then the count is over the number of cyclic triples where all
three nodes have the same value of the attribute. This term can only be used
with directed networks.}
cycle(k)
k
argument is a vector of
distinct integers. This term adds one network statistic to the model for
each element in k
; the $i$th such statistic equals the number of
cycles in the network with length exactly k[i]
. The cycle statistic
applies to both directed and undirected graphs. For directed networks, it
counts directed cycles of length $k$, as opposed to undirected cycles in
the undirected case. The directed cycle terms of lengths 2 and 3 are
equivalent to mutual
and ctriple
(respectively). The undirected
cycle term of length 3 is equivalent to triangle
, and there is no
undirected cycle term of length 2. }
degree(d, attrname)
d
argument is a
vector of distinct integers. This term adds one network statistic to the
model for each element in d
; the $i$th such statistic equals the
number of nodes in the network of degree d[i]
, i.e. with exactly
d[i]
edges. The optional term attrname
is a character string
giving the name of an attribute in the network's vertex attribute list. If
this is specified then the degree count is the number of nodes with the same
value of the attribute as the ego node. This term can only be used with
undirected networks; for directed networks see idegree
and
odegree
. }
density
density
equals kstar(1)
or edges
divided by $n(n-1)/2$; for
directed networks, density
equals edges
or istar(1)
or
ostar(1)
divided by $n(n-1)$. }
dsp(d)
d
argument
is a vector of distinct integers. This term adds one network statistic to
the model for each element in d
; the $i$th such statistic equals
the number of dyads in the network with exactly d[i]
shared partners.
This term can be used with directed and undirected networks.
For directed networks the count is over homogeneous shared
partners only (i.e., only partners on a directed two-path connecting the
nodes in the dyad and in the same direction).}
dyadcov(x, attrname)
x
is either a (symmetric) matrix of dyadic covariates,
or an undirected network; if the latter, optional argument attrname
provides the name of the edge attribute to use for edge values. This term
adds three statistics to the model, representing the (polytomous) effect of
the given covariate on the four possible dyad states (i.e., null, out-tie,
in-tie, mutual). The statistics are the appearance of mutual,
upper-triangular asymmetric, and lower-triangular asymmetric dyads (with the
null state serving as a reference category). If the network is undirected,
x
is either a matrix of edgewise covariates, or a network; if the
latter, optional argument attrname
provides the name of the edge
attribute to use for edge values. This term adds one statistic to the model,
representing the effect of the given covariate on the appearance of edges.
The edgecov
and dyadcov
terms are equivalent for undirected
networks. dyadcov
can be called more than once, to model the effects
of multiple covariates. }
edgecov(x, attrname=NULL)
x
argument is either a matrix of edgewise covariates, or a network; if the
latter, optional argument attrname
provides the name of the edge
attribute to use for edge values. This term adds one statistic to the model,
representing the effect of the given covariate on the appearance of edges.
The edgecov
term applies to both directed and undirected networks. For
undirected networks the covariates are also assumed to be undirected.
The edgecov
and dyadcov
terms are equivalent for undirected
networks. edgecov
can be called more than once, to model the effects of
multiple covariates. }
edges
edges
is equal to kstar(1)
; for directed networks, edges
is equal to
both ostar(1)
and istar(1)
. }
esp(d)
d
argument
is a vector of distinct integers. This term adds one network statistic to
the model for each element in d
; the $i$th such statistic equals
the number of edges in the network with exactly d[i]
shared partners.
This term can be used with directed and undirected networks.
For directed networks the count is over homogeneous shared
partners only (i.e., only partners on a directed two-path connecting the
nodes in the edge in the same direction as the edge itself).}
gwb1degree(decay, fixed=FALSE)
decay
, for nodes
in the first mode of a bipartite network. The first mode of a bipartite
network object is sometimes known as the "actor" mode. This statistic is
based on the version given as equation (14) in
fixed
indicates whether the scale parameter lambda
is to be fit as a curved
exponential family model (see Hunter and Handcock, 2006). The default is
FALSE
, which means the scale parameter is not fixed and thus the
model is a CEF model. This term can only be used with undirected bipartite
networks.}
gwb2degree(decay, fixed=FALSE)
decay
, for nodes
in the second mode of a bipartite network. The second mode of a bipartite
network object is sometimes known as the "event" mode. This statistic is
based on the version given as equation (14) in
fixed
indicates whether the scale parameter lambda
is to be fit as a curved
exponential family model (see Hunter and Handcock, 2006). The default is
FALSE
, which means the scale parameter is not fixed and thus the
model is a CEF model. This term can only be used with undirected bipartite
networks.}
gwdegree(decay, fixed=FALSE)
decay
. This is the version given as equation (14) in
fixed
indicates whether the scale parameter lambda
is to be fit as a curved
exponential family model (see Hunter and Handcock, 2006). The default is
FALSE
, which means the scale parameter is not fixed and thus the
model is a CEF model. This term can only be used with undirected networks.}
gwdsp(alpha, fixed=FALSE)
alpha
$> 0$. The optional argument
fixed
indicates whether the scale parameter lambda
is to be
fit as a curved exponential family model (see Hunter and Handcock, 2006).
The default is FALSE
, which means the scale parameter is not fixed
and thus the model is a CEF model. This term can be used with directed and
undirected networks. For directed networks the count is over homogeneous
shared partners only (i.e., only partners on a directed two-path connecting
the nodes in the dyad and in the same direction).}
gwesp(alpha, fixed=FALSE)
alpha
$> 0$. The optional argument
fixed
indicates whether the scale parameter lambda
is to be
fit as a curved exponential family model (see Hunter and Handcock, 2006).
The default is FALSE
, which means the scale parameter is not fixed
and thus the model is a CEF model. This term can be used with directed and
undirected networks. For directed networks the geometric weighting is over
homogeneous shared partners only (i.e., only partners on a directed two-path
connecting the nodes in the edge in the same direction as the edge itself).}
gwidegree(decay, fixed=FALSE)
decay
. The optional argument fixed
indicates whether the scale
parameter lambda
is to be fit as a curved exponential family model
(see Hunter and Handcock, 2006). The default is FALSE
, which means
the scale parameter is not fixed and thus the model is a CEF model. This
term can only be used with directed networks.}
gwodegree(decay, fixed=FALSE)
decay
. The optional argument fixed
indicates whether the scale
parameter lambda
is to be fit as a curved exponential family model
(see Hunter and Handcock, 2006). The default is FALSE
, which means
the scale parameter is not fixed and thus the model is a CEF model. This
term can only be used with directed networks.}
hamming(x, cov, attrname)
x
. (If no
argument is given, x
is taken to be the observed network.) Unweighted
Hamming distance is defined as the total number of pairs $(i,j)$
(ordered or unordered, depending on whether the network is directed or
undirected) on which the two networks differ. If the optional argument
cov
is specified, then the weighted Hamming distance is computed
instead, where each pair $(i,j)$ contributes a pre-specified weight
toward the distance when the two networks differ on that pair. The argument
cov
is either a matrix of edgewise weights or a network; if the
latter, the optional argument attrname
provides the name of the edge
attribute to use for weight values.}
hammingmix(attrname, x, base=0,
contrast=FALSE)
x
.
The statistic equals the number of
dyads in the subnetwork that differ in tie value. This term produces one
statistic for every entry in the mixing matrix for the attribute. The
ordering of the attribute values is alphabetical. If the option
contrast=TRUE
is used, then a statistic for the first pairing is not
included, making it the de facto reference category. The option
base
gives the index of statistics to be omitted from the tabulation.
For example base=2
will omit the second statistic, making it the
de facto reference category.}
idegree(d, attrname)
d
argument
is a vector of distinct integers. This term adds one network statistic to
the model for each element in d
; the $i$th such statistic equals
the number of nodes in the network of in-degree d[i]
, i.e. the number
of nodes with exactly d[i]
in-edges. The optional argument
attrname
is a character string giving the name of an attribute in the
network's vertex attribute list. If this is specified then the count only
considers edges in which both nodes have the same value of the attribute.
This term can only be used with directed networks; for undirected networks
see degree
. }
intransitive
111D
, 201
,
111U
, 021C
, and 030C
in the triad census of Davis and
Leinhardt (1972). For details about triad types, see
triad.classify
in the sna
package.
Note the distinction from the ctriple
term. This term can only be
used with directed networks.}
isolates
istar(k, attrname)
k
argument is a
vector of distinct integers. This term adds one network statistic to the
model for each element in k
. The $i$th such statistic counts the
number of distinct k[i]
-instars in the network, where a
$k$-instar is defined to be a node $N$ and a set of $k$
different nodes ${O_1, \dots, O_k}$ such that the ties
$(O_j{\rightarrow}N)$ exist for $j=1, \dots, k$. The
optional argument attrname
is a character string giving the name of
an attribute in the network's vertex attribute list. If this is specified
then the count is over the number of $k$-instars where all nodes have
the same value of the attribute. This term can only be used for directed
networks; for undirected networks see kstar
. Note that
istar(1)
is equal to both ostar(1)
and edges
. }
kstar(k, attrname)
k
argument is a
vector of distinct integers. This term adds one network statistic to the
model for each element in k
. The $i$th such statistic counts the
number of distinct k[i]
-stars in the network, where a $k$-star is
defined to be a node $N$ and a set of $k$ different nodes
${O_1, \dots, O_k}$ such that the ties ${N, O_i}$ exist for
$i=1, \dots, k$. The optional argument attrname
is a character
string giving the name of an attribute in the network's vertex attribute
list. If this is specified then the count is over the number of
$k$-stars where all nodes have the same value of the attribute. This
term can only be used for undirected networks; for directed networks, see
istar
, ostar
, twopath
and m2star
. Note that kstar(1)
is
equal to edges
. }
localtriangle(x)
x
is a network or
an adjacency matrix that specifies whether the two nodes are in the same
neighborhood. Note that this is technically a special case of
triangle
. }
m2star
kstar(2)
. This term adds one statistic to the model, equal to the
number of mixed 2-stars in the network, defined as a pair of edges
$(i{\rightarrow}j), (j{\rightarrow}k)$. A mixed 2-star is
sometimes called a 2-path because it is a directed path of length 2 from
$i$ to $k$ via $j$. See also twopath
.}
match(attrname, diff=FALSE)
nodematch(attrname,
diff=FALSE)
.}
meandeg
edges
and density
.}
mutual
nearsimmelian
nodecov(attrname)
attrname
argument is a character string giving the name of a
numeric (not categorical) attribute in the network's vertex attribute
list. This term adds a single network statistic to the model equaling the
sum of attrname(i)
and attrname(j)
for all edges $(i,j)$
in the network. For categorical attributes, see nodefactor
.
Note that for directed networks, nodecov
equals nodeicov
plus nodeocov
.}
nodefactor(attrname, base=1)
attrname
argument is a character string giving the name of a
categorical attribute in the network's vertex attribute list. This term adds
multiple network statistics to the model, one for each of (a subset of) the
unique values of the attrname
attribute. Each of these statistics
gives the number of times a node with that attribute appears in an edge in
the network. In particular, for edges whose endpoints both have the same
attribute value, this value is counted twice. To include all attribute
values is usually not a good idea, because the sum of all such statistics
equals twice the number of edges and hence a linear dependency would arise
in any model also including edges
. Thus, the base
argument
tells which value(s), numbered in order according to the sort
function, should be omitted. The default value, one, means that the smallest
(i.e., first in sorted order) attribute value is omitted, making this value
the reference category to which all other values are compared. For example,
if the nodefactor("fruit", base=2:3)
. For an analogous term for quantitative
vertex attributes, see nodecov
. }
nodeicov(attrname)
attrname
argument is a character string giving the
name of a numeric (not categorical) attribute in the network's vertex
attribute list. This term adds a single network statistic to the model
equaling the total value of attrname(j)
for all edges $(i,j)$ in
the network. This term may only be used with directed networks. For
categorical attributes, see nodeifactor
.}
nodeifactor(attrname, base=1)
attrname
argument is a character string giving the
name of a categorical attribute in the network's vertex attribute list. This
term adds multiple network statistics to the model, one for each of (a
subset of) the unique values of the attrname
attribute. Each of these
statistics gives the number of times a node with that attribute appears as
the terminal node of a directed tie. The base
argument tells which
value(s), numbered in order according to the sort
function, should be
omitted. The default value, one, means that the smallest (i.e., first in
sorted order) attribute value is omitted, making this value the reference
category to which all other values are compared. For an example, see the
nodefactor
entry. The nodeifactor
term may only be used with
directed networks.}
nodematch(attrname, diff=FALSE, keep=NULL)
attrname
argument is a
character string giving the name of an attribute in the network's vertex
attribute list. When diff=FALSE
, this term adds one network statistic
to the model, which counts the number of edges $(i,j)$ for which
attrname(i)==attrname(j)
. When diff=TRUE
, $p$ network
statistics are added to the model, where $p$ is the number of unique
values of the attrname
attribute. The $k$th such statistic counts
the number of edges $(i,j)$ for which attrname(i) == attrname(j)
== value(k)
, where value(k)
is the $k$th smallest unique value
of the attrname attribute. The optional keep
argument determines
which values of k
will be considered for matches; other values are
ignored. Default is that all values are considered. If keep
is set to
non-NULL, it should be a vector of positive integers giving the values of
k
to keep, or a vector of negative integers giving the (negative)
values of k
to ignore. Note that this works for both
diff=FALSE
and diff=TRUE
. For example, to add two statistics,
counting the matches for just the 2nd and 4th categories, use
nodematch
with diff=TRUE
and keep=c(2,4)
.}
nodemix(attrname, contrast=FALSE)
attrname
argument is a character string giving the name
of a categorical attribute in the network's vertex attribute list. This term
adds one network statistic to the model for each possible pairing of
attribute values. The statistic equals the number of edges in the network in
which the nodes have that pairing of values. In other words, this term
produces one statistic for every entry in the mixing matrix for the
attribute. The ordering of the attribute values is alphabetical. If the
option contrast=TRUE
is used, then a statistic for the first pairing
is not included, making it the de facto reference category.}
nodeocov(attrname)
attrname
argument is a character string giving the
name of a numeric (not categorical) attribute in the network's vertex
attribute list. This term adds a single network statistic to the model
equaling the total value of attrname(i)
for all edges $(i,j)$ in
the network. This term may only be used with directed networks. For
categorical attributes, see nodeofactor
.}
nodeofactor(attrname, base=1)
attrname
argument is a character string giving
the name of a categorical attribute in the network's vertex attribute list.
This term adds multiple network statistics to the model, one for each of (a
subset of) the unique values of the attrname
attribute. Each of these
statistics gives the number of times a node with that attribute appears as
the node of origin of a directed tie. The base
argument tells which
value(s), numbered in order according to the sort
function, should be
omitted. The default value, one, means that the smallest (i.e., first in
sorted order) attribute value is omitted, making this value the reference
category to which all other values are compared. For an example, see the
nodefactor
entry. The nodeofactor
term may only be used with
directed networks.}
odegree(d, attrname)
d
argument
is a vector of distinct integers. This term adds one network statistic to
the model for each element in d
; the $i$th such statistic equals
the number of nodes in the network of out-degree d[i]
, i.e. the
number of nodes with exactly d[i]
out-edges. The optional argument
attrname
is a character string giving the name of an attribute in the
network's vertex attribute list. If this is specified then the count only
considers edges in which both nodes have the same value of the attribute.
This term can only be used with directed networks; for undirected networks
see degree
. }
ostar(k, attrname)
k
argument is
a vector of distinct integers. This term adds one network statistic to the
model for each element in k
. The $i$th such statistic counts the
number of distinct k[i]
-outstars in the network, where a
$k$-outstar is defined to be a node $N$ and a set of $k$
different nodes ${O_1, \dots, O_k}$ such that the ties
$(N{\rightarrow}O_j)$ exist for $j=1, \dots, k$. The
optional argument attrname
is a character string giving the name of
an attribute in the network's vertex attribute list. If this is specified
then the count is the number of $k$-outstars where all nodes have the
same value of the attribute. This term can only be used with directed
networks; for undirected networks see kstar
. Note that
ostar(1)
is equal to both istar(1)
and edges
. }
receiver
sociality
.}
sender
sociality
.}
simmelian
simmelianties
smalldiff(attrname, cutoff)
attrname
argument is a character string giving the name of a
quantitative attribute in the network's vertex attribute list and
cutoff
is any real number. This term adds one network statistic to
the model, equal to the number of edges $(i,j)$ for which
abs(attrname(i)-attrname(j))
is less than or equal to cutoff
.
}
sociality(attrname)
attrname
is a character string giving the
name of an attribute in the network's vertex attribute list that takes
categorical values. If provided, this term only counts ties between nodes
with the same value of the attribute. This term can only be used with
undirected networks. For directed networks, see sender
and
receiver
. }
transitive
120D
, 030T
,
120U
, and 300
in the triad census of Davis and Leinhardt
(1972). For details about triad types, see triad.classify
in the sna
package. Note the distinction from the
ttriple
term. This term can only be used with directed networks.}
triadcensus
triad.classify
in the sna
package, on
which this code is based. For an undirected graph the triad census is over
the four types defined by the number of ties (i.e., 0, 1, 2, and 3).}
triangle(attrname)
triangle
equals ttriple
plus ctriple
, so at most two of
these three terms can be in a model. The optional argument attrname
restricts the count to those triples of nodes with equal values of the
vertex attribute specified by attrname
. }
tripercent(attrname)
triangle
. A potential triangle is a 2-star. The
optional argument attrname
restricts the counts (both numerator and
denominator) to those triples of nodes with equal values of the vertex
attribute specified by attrname
. This term can only be used with
undirected networks.}
ttriple(attrname)
triangle
equals ttriple+ctriple
for a directed network, so at
most two of the three terms can be in a model. The optional argument attrname
is a character string giving the name of an attribute in the network's
vertex attribute list. If this is specified then the count is over the
number of transitive triples where all three nodes have the same value of the
attribute. This term can only be used with directed networks.}
twopath
ergm(molecule ~ edges + kstar(2:3) + triangle
+ nodematch("atomic type",diff=TRUE)
+ triangle + absdiff("atomic type"))