These functions include ways to take a census of the graphlets in a network:

  • net_by_dyad() returns a census of dyad motifs in a network.

  • net_by_triad() returns a census of triad motifs in a network.

  • net_by_tetrad() returns a census of tetrad motifs in a network.

  • net_by_mixed() returns a census of triad motifs that span a one-mode and a two-mode network.

See also graph classes.

net_x_dyad(.data)

net_x_triad(.data)

net_x_tetrad(.data)

net_x_mixed(.data, object2)

Source

Alejandro Espinosa 'netmem'

Arguments

.data

A network object of class mnet, igraph, tbl_graph, network, or similar. For more information on the standard coercion possible, see manynet::as_tidygraph().

object2

A second, two-mode network object.

Dyad census

The dyad census counts the number of mutual, asymmetric, and null dyads in a network. For directed networks,

  • Mutual dyads have ties in both directions

  • Asymmetric dyads have a tie in one direction only

  • Null dyads have no ties

Note that for undirected and two-mode networks, only mutual and null dyads are possible, as the concept of an asymmetric dyad does not apply.

Triad census

The triad census counts the number of three-node configurations in the network. The function returns a matrix with a special naming convention:

  • 003: This is an empty triad; no ties

  • 012: This triad includes one tie

  • 102: This triad includes two ties, but they are not reciprocated

  • 021D: This triad includes two ties, one of which is reciprocated, and the other is directed towards the reciprocated tie

  • 021U: This triad includes two ties, one of which is reciprocated, and the other is directed away from the reciprocated tie

  • 021C: This triad includes two ties, one of which is reciprocated, and the other is directed between the two non-reciprocated nodes

  • 111D: This triad includes three ties, two of which are reciprocated, and the other is directed towards the reciprocated ties

  • 111U: This triad includes three ties, two of which are reciprocated, and the other is directed away from the reciprocated ties

  • 030T: This triad includes three ties, all of which are directed in a transitive manner (i.e. A->B, B->C, A->C)

  • 030C: This triad includes three ties, all of which are directed in a cyclic manner (i.e. A->B, B->C A->C)

  • 201: This triad includes three ties, all of which are reciproc ated (i.e. A<->B, B<->C, A<->C)

  • 120D: This triad includes four ties, three of which are reciprocated, and the other is directed towards the reciprocated ties

  • 120U: This triad includes four ties, three of which are reciprocated, and the other is directed away from the reciprocated ties

  • 120C: This triad includes four ties, three of which are reciprocated, and the other is directed between the two non-reciprocated

  • 210: This triad includes five ties, four of which are reciprocated, and the other is directed between the two non-reciprocated

  • 300: This triad includes six ties, all of which are reciprocated

Note that for undirected and two-mode networks, only 003, 102, and 201 are possible, as the other configurations rely on the concept of directionality.

Tetrad census

The tetrad census counts the number of four-node configurations in the network. The function returns a matrix with a special naming convention:

  • E4 (aka co-K4): This is an empty set of four nodes; no ties

  • I4 (aka co-diamond): This is a set of four nodes with just one tie

  • H4 (aka co-C4): This set of four nodes includes two non-adjacent ties

  • L4 (aka co-paw): This set of four nodes includes two adjacent ties

  • D4 (aka co-claw): This set of four nodes includes three adjacent ties, in the form of a triangle with one isolate

  • U4 (aka P4, four-actor line): This set of four nodes includes three ties arranged in a line

  • Y4 (aka claw): This set of four nodes includes three ties all adjacent to a single node

  • P4 (aka paw, kite): This set of four nodes includes four ties arranged as a triangle with an extra tie hanging off of one of the nodes

  • C4 (aka bifan): This is a symmetric box or 4-cycle or set of shared choices

  • Z4 (aka diamond): This resembles C4 but with an extra tie cutting across the box

  • X4 (aka K4): This resembles C4 but with two extra ties cutting across the box; a realisation of all possible ties

Graphs of these motifs can be shown using plot(net_x_tetrad(ison_southern_women)).

References

On the dyad census

Holland, Paul W., and Samuel Leinhardt. 1970. "A Method for Detecting Structure in Sociometric Data". American Journal of Sociology, 76: 492-513. doi:10.1016/B978-0-12-442450-0.50028-6

Wasserman, Stanley, and Katherine Faust. 1994. "Social Network Analysis: Methods and Applications". Cambridge: Cambridge University Press.

On the triad census

Davis, James A., and Samuel Leinhardt. 1967. “The Structure of Positive Interpersonal Relations in Small Groups.” 55.

On the tetrad census

Ortmann, Mark, and Ulrik Brandes. 2017. “Efficient Orbit-Aware Triad and Quad Census in Directed and Undirected Graphs.” Applied Network Science 2(1):13. doi:10.1007/s41109-017-0027-2 .

McMillan, Cassie, and Diane Felmlee. 2020. "Beyond Dyads and Triads: A Comparison of Tetrads in Twenty Social Networks". Social Psychology Quarterly 83(4): 383-404. doi:10.1177/0190272520944151

On the mixed census

Hollway, James, Alessandro Lomi, Francesca Pallotti, and Christoph Stadtfeld. 2017. “Multilevel Social Spaces: The Network Dynamics of Organizational Fields.” Network Science 5(2): 187–212. doi:10.1017/nws.2017.8

Examples

net_x_dyad(manynet::ison_algebra)
#> # A tibble: 1 × 3
#>   Mutual Asymmetric  Null
#>    <dbl>      <dbl> <dbl>
#> 1     68          8    44
net_x_triad(manynet::ison_adolescents)
#> # A tibble: 1 × 6
#>   `003` `012` `102` `201` `210` `300`
#>   <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
#> 1    13     0    29    11     0     3
net_x_tetrad(ison_southern_women)
#> # A tibble: 1 × 11
#>      E4    I4    H4    L4    D4    U4    Y4    P4    C4    Z4    X4
#>   <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
#> 1 12388     0 11869     0     0     0     0     0  7458     0  2758
net_x_mixed(fict_marvel)
#> # A tibble: 1 × 10
#>    `22`  `21`  `20`  `12`  `11D`  `11U`  `10`  `02`   `01`   `00`
#>   <dbl> <dbl> <dbl> <dbl>  <dbl>  <dbl> <dbl> <dbl>  <dbl>  <dbl>
#> 1  1251 -1684  3272 10388 -10006 -10006 39462 48004 -98436 212053