Warning

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

average_clustering

average_clustering(G, nodes=None, mode='dot')[source]

Compute the average bipartite clustering coefficient.

A clustering coefficient for the whole graph is the average,

\[C = \frac{1}{n}\sum_{v \in G} c_v,\]

where \(n\) is the number of nodes in \(G\).

Similar measures for the two bipartite sets can be defined [R160]

\[C_X = \frac{1}{|X|}\sum_{v \in X} c_v,\]

where \(X\) is a bipartite set of \(G\).

Parameters:

G : graph

a bipartite graph

nodes : list or iterable, optional

A container of nodes to use in computing the average. The nodes should be either the entire graph (the default) or one of the bipartite sets.

mode : string

The pariwise bipartite clustering method. It must be “dot”, “max”, or “min”

Returns:

clustering : float

The average bipartite clustering for the given set of nodes or the entire graph if no nodes are specified.

See also

clustering

Notes

The container of nodes passed to this function must contain all of the nodes in one of the bipartite sets (“top” or “bottom”) in order to compute the correct average bipartite clustering coefficients.

References

[R160](1, 2) Latapy, Matthieu, Clémence Magnien, and Nathalie Del Vecchio (2008). Basic notions for the analysis of large two-mode networks. Social Networks 30(1), 31–48.

Examples

>>> from networkx.algorithms import bipartite
>>> G=nx.star_graph(3) # star graphs are bipartite
>>> bipartite.average_clustering(G) 
0.75
>>> X,Y=bipartite.sets(G)
>>> bipartite.average_clustering(G,X) 
0.0
>>> bipartite.average_clustering(G,Y) 
1.0