Learn R Programming

migraph (version 0.12.1)

core-periphery: Core-periphery clustering algorithms

Description

This function is used to identify which nodes should belong to the core, and which to the periphery. It seeks to minimize the following quantity: $$Z(S_1) = \sum_{(i<j)\in S_1} \textbf{I}_{\{A_{ij}=0\}} + \sum_{(i<j)\notin S_1} \textbf{I}_{\{A_{ij}=1\}}$$ where nodes \(\{i,j,...,n\}\) are ordered in descending degree, \(A\) is the adjacency matrix, and the indicator function is 1 if the predicate is true or 0 otherwise. Note that minimising this quantity maximises density in the core block and minimises density in the periphery block; it ignores ties between these blocks.

Usage

node_core(object)

Arguments

object

An object of a migraph-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

References

Borgatti, Stephen P., & Everett, Martin G. 1999. Models of core /periphery structures. Social Networks, 21, 375–395. tools:::Rd_expr_doi("10.1016/S0378-8733(99)00019-2")

Lip, Sean Z. W. 2011. “A Fast Algorithm for the Discrete Core/Periphery Bipartitioning Problem.” tools:::Rd_expr_doi("10.48550/arXiv.1102.5511")

See Also

Other memberships: community, components(), equivalence

Examples

Run this code
mpn_elite_usa_advice %>% as_tidygraph %>% 
  mutate(corep = node_core(mpn_elite_usa_advice)) %>% 
  autographr(node_color = "corep")
network_core(mpn_elite_usa_advice)

Run the code above in your browser using DataLab