Warning

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

attribute_assortativity_coefficient

attribute_assortativity_coefficient(G, attribute, nodes=None)[source]

Compute assortativity for node attributes.

Assortativity measures the similarity of connections in the graph with respect to the given attribute.

Parameters:

G : NetworkX graph

attribute : string

Node attribute key

nodes: list or iterable (optional)

Compute attribute assortativity for nodes in container. The default is all nodes.

Returns:

r: float

Assortativity of graph for given attribute

Notes

This computes Eq. (2) in Ref. [R148] , trace(M)-sum(M))/(1-sum(M), where M is the joint probability distribution (mixing matrix) of the specified attribute.

References

[R148](1, 2) M. E. J. Newman, Mixing patterns in networks, Physical Review E, 67 026126, 2003

Examples

>>> G=nx.Graph()
>>> G.add_nodes_from([0,1],color='red')
>>> G.add_nodes_from([2,3],color='blue')
>>> G.add_edges_from([(0,1),(2,3)])
>>> print(nx.attribute_assortativity_coefficient(G,'color'))
1.0