Warning

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

# degree_pearson_correlation_coefficient¶

degree_pearson_correlation_coefficient(G, x='out', y='in', weight=None, nodes=None)

Compute degree assortativity of graph.

Assortativity measures the similarity of connections in the graph with respect to the node degree.

This is the same as degree_assortativity_coefficient but uses the potentially faster scipy.stats.pearsonr function.

Parameters : G : NetworkX graph x: string (‘in’,’out’) The degree type for source node (directed graphs only). y: string (‘in’,’out’) The degree type for target node (directed graphs only). weight: string or None, optional (default=None) The edge attribute that holds the numerical value used as a weight. If None, then each edge has weight 1. The degree is the sum of the edge weights adjacent to the node. nodes: list or iterable (optional) Compute pearson correlation of degrees only for specified nodes. The default is all nodes. r : float Assortativity of graph by degree.

Notes

This calls scipy.stats.pearsonr.

References

 [R150] M. E. J. Newman, Mixing patterns in networks Physical Review E, 67 026126, 2003
 [R151] Foster, J.G., Foster, D.V., Grassberger, P. & Paczuski, M. Edge direction and the structure of networks, PNAS 107, 10815-20 (2010).

Examples

>>> G=nx.path_graph(4)
>>> r=nx.degree_pearson_correlation_coefficient(G)
>>> print("%3.1f"%r)
-0.5