Warning

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

clustering

clustering(G, nodes=None, mode='dot')

Compute a bipartite clustering coefficient for nodes.

The bipartie clustering coefficient is a measure of local density of connections defined as [R161]:

cu=vN(N(v))cuv|N(N(u))|

where N(N(u)) are the second order neighbors of u in G excluding u, and cuv is the pairwise clustering coefficient between nodes u and v.

The mode selects the function for cuv which can be:

dot:

cuv=|N(u)N(v)||N(u)N(v)|

min:

cuv=|N(u)N(v)|min(|N(u)|,|N(v)|)

max:

cuv=|N(u)N(v)|max(|N(u)|,|N(v)|)
Parameters:

G : graph

A bipartite graph

nodes : list or iterable (optional)

Compute bipartite clustering for these nodes. The default is all nodes in G.

mode : string

The pariwise bipartite clustering method to be used in the computation. It must be “dot”, “max”, or “min”.

Returns:

clustering : dictionary

A dictionary keyed by node with the clustering coefficient value.

See also

robins_alexander_clustering, square_clustering, average_clustering

References

[R161](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.path_graph(4) # path graphs are bipartite
>>> c = bipartite.clustering(G) 
>>> c[0]
0.5
>>> c = bipartite.clustering(G,mode='min') 
>>> c[0]
1.0