Compute a bipartite clustering coefficient for nodes.
The bipartie clustering coefficient is a measure of local density of connections defined as [R144]:
c_u = \frac{\sum_{v \in N(N(v))} c_{uv} }{|N(N(u))|}
where N(N(u)) are the second order neighbors of u in G excluding u, and c_{uv} is the pairwise clustering coefficient between nodes u and v.
The mode selects the function for c_{uv} which can be:
dot:
c_{uv}=\frac{|N(u)\cap N(v)|}{|N(u) \cup N(v)|}
min:
c_{uv}=\frac{|N(u)\cap N(v)|}{min(|N(u)|,|N(v)|)}
max:
c_{uv}=\frac{|N(u)\cap N(v)|}{max(|N(u)|,|N(v)|)}
Parameters: | G : graph
nodes : list or iterable (optional)
mode : string
|
---|---|
Returns: | clustering : dictionary
|
See also
robins_alexander_clustering, square_clustering, average_clustering
References
[R144] | (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