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


Python cugraph.traversal.bfs.bfs_edges用法及代碼示例

用法:

cugraph.traversal.bfs.bfs_edges(G, source, reverse=False, depth_limit=None, sort_neighbors=None)

查找圖的廣度優先遍曆的距離和前輩。

參數

Gcugraph.Graph、networkx.Graph、CuPy 或 SciPy 稀疏矩陣

圖形或矩陣對象,應包含連通性信息。邊權重(如果存在)應該是單精度或雙精度浮點值。

source整數

起始頂點索引

reverse布爾值,可選(默認=假)

如果是有向圖,則反向處理邊 目前未實現

depth_limit整數或無,可選(默認=無)

限製搜索的深度

sort_neighbors無或函數,可選(默認=無)

目前未實施

返回

返回值類型基於輸入類型。如果 G 是一個 cugraph.Graph,
返回:
cudf.DataFrame

df[‘vertex’] 頂點 ID

df[‘distance’] 每個頂點到起始頂點的路徑距離

df[‘predecessor’] 對於列中的每個第 i 個位置,緊接在 ‘vertex’ 列中位置 i 處的頂點之前的頂點 ID

如果 G 是 networkx.Graph,則返回:

pandas.DataFrame 的內容與上述 cudf.DataFrame 相同。

如果 G 是 CuPy 或 SciPy 矩陣,則返回:

CuPy ndarrays(如果 CuPy 矩陣輸入)或 Numpy ndarrays(如果 SciPy 矩陣輸入)的 2 元組,表示:

距離:cupy 或 numpy ndarray

源和頂點之間最短距離的ndarray。

前身:cupy 或 numpy ndarray

來自源的路徑上頂點的前驅的ndarray,可用於重建最短路徑。

…或者如果 return_sp_counter 為 True,則返回一個 3 元組,其中包含上述兩個數組加上:

sp_counter:cupy 或 numpy ndarray

ndarray 通向每個頂點的最短路徑數。

例子

>>> M = cudf.read_csv(datasets_path / 'karate.csv', delimiter=' ',
...                   dtype=['int32', 'int32', 'float32'], header=None)
>>> G = cugraph.Graph()
>>> G.from_cudf_edgelist(M, source='0', destination='1')
>>> df = cugraph.bfs_edges(G, 0)

相關用法


注:本文由純淨天空篩選整理自rapids.ai大神的英文原創作品 cugraph.traversal.bfs.bfs_edges。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。