当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python NetworkX average_shortest_path_length用法及代码示例


本文简要介绍 networkx.algorithms.shortest_paths.generic.average_shortest_path_length 的用法。

用法:

average_shortest_path_length(G, weight=None, method=None)

返回平均最短路径长度。

平均最短路径长度为

其中VG中的节点集,d(s, t)是从st的最短路径,nG中的节点数。

参数

GNetworkX 图
weight无,字符串或函数,可选(默认 = 无)

如果为 None,则每条边的权重/距离/成本为 1。如果是字符串,则使用此边属性作为边权重。任何不存在的边属性默认为 1。如果这是一个函数,则边的权重是函数返回的值。该函数必须准确地接受三个位置参数:一条边的两个端点和该边的边属性字典。该函数必须返回一个数字。

method字符串,可选(默认 = ‘unweighted’ 或 ‘djikstra’)

用于计算路径长度的算法。支持的选项是‘unweighted’, ‘dijkstra’、“bellman-ford”、“floyd-warshall”和“floyd-warshall-numpy”。其他方法值会产生 ValueError。如果weight 为None,则默认方法为‘unweighted’,否则默认方法为‘dijkstra’。

抛出

NetworkXPointlessConcept

如果G 是空图(即零节点上的图)。

NetworkXError

如果G 没有连接(或没有弱连接,在有向图的情况下)。

ValueError

如果 method 不在支持的选项中。

例子

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

对于断开连接的图,您可以计算每个组件的平均最短路径长度

>>> G = nx.Graph([(1, 2), (3, 4)])
>>> for C in (G.subgraph(c).copy() for c in nx.connected_components(G)):
...     print(nx.average_shortest_path_length(C))
1.0
1.0

相关用法


注:本文由纯净天空筛选整理自networkx.org大神的英文原创作品 networkx.algorithms.shortest_paths.generic.average_shortest_path_length。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。