當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。