Note
This documents the development version of NetworkX. Documentation for the current release can be found here.
networkx.algorithms.richclub.rich_club_coefficient¶

rich_club_coefficient
(G, normalized=True, Q=100, seed=None)[source]¶ Returns the richclub coefficient of the graph
G
.For each degree k, the richclub coefficient is the ratio of the number of actual to the number of potential edges for nodes with degree greater than k:
\[\phi(k) = \frac{2 E_k}{N_k (N_k  1)}\]where
N_k
is the number of nodes with degree larger than k, andE_k
is the number of edges among those nodes. Parameters
 GNetworkX graph
Undirected graph with neither parallel edges nor selfloops.
 normalizedbool (optional)
Normalize using randomized network as in [1]
 Qfloat (optional, default=100)
If
normalized
is True, performQ * m
doubleedge swaps, wherem
is the number of edges inG
, to use as a nullmodel for normalization. seedinteger, random_state, or None (default)
Indicator of random number generation state. See Randomness.
 Returns
 rcdictionary
A dictionary, keyed by degree, with richclub coefficient values.
Notes
The rich club definition and algorithm are found in [1]. This algorithm ignores any edge weights and is not defined for directed graphs or graphs with parallel edges or self loops.
Estimates for appropriate values of
Q
are found in [2].References
 1(1,2)
Julian J. McAuley, Luciano da Fontoura Costa, and Tibério S. Caetano, “The richclub phenomenon across complex network hierarchies”, Applied Physics Letters Vol 91 Issue 8, August 2007. https://arxiv.org/abs/physics/0701290
 2
R. Milo, N. Kashtan, S. Itzkovitz, M. E. J. Newman, U. Alon, “Uniform generation of random graphs with arbitrary degree sequences”, 2006. https://arxiv.org/abs/condmat/0312028
Examples
>>> G = nx.Graph([(0, 1), (0, 2), (1, 2), (1, 3), (1, 4), (4, 5)]) >>> rc = nx.rich_club_coefficient(G, normalized=False, seed=42) >>> rc[0] 0.4