Warning

This documents an unmaintained version of NetworkX. Please upgrade to a maintained version and see the current NetworkX documentation.

networkx.algorithms.bipartite.centrality.betweenness_centrality

betweenness_centrality(G, nodes)[source]

Compute betweenness centrality for nodes in a bipartite network.

Betweenness centrality of a node v is the sum of the fraction of all-pairs shortest paths that pass through v.

Values of betweenness are normalized by the maximum possible value which for bipartite graphs is limited by the relative size of the two node sets [1].

Let n be the number of nodes in the node set U and m be the number of nodes in the node set V, then nodes in U are normalized by dividing by

\[\frac{1}{2} [m^2 (s + 1)^2 + m (s + 1)(2t - s - 1) - t (2s - t + 3)] ,\]

where

\[s = (n - 1) \div m , t = (n - 1) \mod m ,\]

and nodes in V are normalized by dividing by

\[\frac{1}{2} [n^2 (p + 1)^2 + n (p + 1)(2r - p - 1) - r (2p - r + 3)] ,\]

where,

\[p = (m - 1) \div n , r = (m - 1) \mod n .\]
Parameters:
  • G (graph) – A bipartite graph
  • nodes (list or container) – Container with all nodes in one bipartite node set.
Returns:

betweenness – Dictionary keyed by node with bipartite betweenness centrality as the value.

Return type:

dictionary

See also

degree_centrality(), closeness_centrality(), sets(), is_bipartite()

Notes

The nodes input parameter must contain all nodes in one bipartite node set, but the dictionary returned contains all nodes from both node sets. See bipartite documentation for further details on how bipartite graphs are handled in NetworkX.

References

[1]Borgatti, S.P. and Halgin, D. In press. “Analyzing Affiliation Networks”. In Carrington, P. and Scott, J. (eds) The Sage Handbook of Social Network Analysis. Sage Publications. http://www.steveborgatti.com/research/publications/bhaffiliations.pdf