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


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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。