These functions return logical vectors the length of the nodes in a network identifying which hold certain properties or positions in the network.

  • node_is_cutpoint() marks nodes that cut or act as articulation points in a network, increasing the number of connected components when removed.

  • node_is_isolate() marks nodes that are isolates, with neither incoming nor outgoing ties.

  • node_is_core() marks nodes that are members of the network's core.

  • node_is_fold() marks nodes that are in a structural fold between two or more triangles that are only connected by that node.

  • node_is_mentor() marks a proportion of high indegree nodes as 'mentors' (see details)

node_is_isolate(.data)

node_is_cutpoint(.data)

node_is_core(.data)

node_is_fold(.data)

node_is_mentor(.data, elites = 0.1)

Arguments

.data

An object of a manynet-consistent class:

  • matrix (adjacency or incidence) from {base} R

  • edgelist, a data frame from {base} R or tibble from {tibble}

  • igraph, from the {igraph} package

  • network, from the {network} package

  • tbl_graph, from the {tidygraph} package

elites

The proportion of nodes to be selected as mentors. By default this is set at 0.1. This means that the top 10% of nodes in terms of degree, or those equal to the highest rank degree in the network, whichever is the higher, will be used to select the mentors.

Note that if nodes are equidistant from two mentors, they will choose one at random. If a node is without a path to a mentor, for example because they are an isolate, a tie to themselves (a loop) will be created instead. Note that this is a different default behaviour than that described in Valente and Davis (1999).

References

Valente, Thomas, and Rebecca Davis. 1999. "Accelerating the Diffusion of Innovations Using Opinion Leaders", Annals of the American Academy of Political and Social Science 566: 56-67.

See also

Examples

node_is_isolate(ison_brandes)
#>   V1    V2    V3    V4    V5    V6    V7    V8    V9    V10   V11  
#> 1 FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
node_is_cutpoint(ison_brandes)
#>   V1    V2    V3    V4    V5    V6    V7    V8    V9    V10   V11  
#> 1 FALSE FALSE TRUE  TRUE  FALSE FALSE FALSE FALSE TRUE  FALSE FALSE
node_is_core(ison_brandes)
#>   V1    V2    V3    V4    V5    V6    V7    V8    V9    V10   V11  
#> 1 FALSE FALSE TRUE  TRUE  FALSE FALSE FALSE FALSE TRUE  FALSE FALSE
node_is_fold(create_explicit(A-B, B-C, A-C, C-D, C-E, D-E))
#>   A     B     C     D     E    
#> 1 FALSE FALSE TRUE  FALSE FALSE