NetworkX

Previous topic

shortest_path_length

Next topic

has_path

average_shortest_path_length

average_shortest_path_length(G, weight=None)[source]

Return the average shortest path length.

The average shortest path length is

a =\sum_{s,t \in V} \frac{d(s, t)}{n(n-1)}

where V is the set of nodes in G, d(s, t) is the shortest path from s to t, and n is the number of nodes in G.

Parameters :

G : NetworkX graph

weight : None or string, optional (default = None)

If None, every edge has weight/distance/cost 1. If a string, use this edge attribute as the edge weight. Any edge attribute not present defaults to 1.

Raises :

NetworkXError: :

if the graph is not connected.

Examples

>>> G=nx.path_graph(5)
>>> print(nx.average_shortest_path_length(G))
2.0

For disconnected graphs you can compute the average shortest path length for each component: >>> G=nx.Graph([(1,2),(3,4)]) >>> for g in nx.connected_component_subgraphs(G): ... print(nx.average_shortest_path_length(g)) 1.0 1.0