incidence_matrix#

incidence_matrix(G, nodelist=None, edgelist=None, oriented=False, weight=None, *, dtype=None)[source]#

返回图 G 的关联矩阵。

关联矩阵将每一行分配给一个节点,将每一列分配给一条边。对于标准关联矩阵,只要行的节点与列的边关联,该位置就显示 1。对于有向关联矩阵,每条边都被分配一个方向(对于无向图是任意的,对于有向图则遵循方向)。边的源(尾部)节点显示 -1,目的(头部)节点显示 1。其他元素为零。

参数:
G

一个 NetworkX 图

nodelist列表,可选(默认为 G 中的所有节点)

行按照 nodelist 中的节点进行排序。如果 nodelist 为 None,则排序由 G.nodes() 生成。

edgelist列表,可选(默认为 G 中的所有边)

列按照 edgelist 中的边进行排序。如果 edgelist 为 None,则排序由 G.edges() 生成。

oriented: 布尔值,可选(默认为 False)

如果为 True,矩阵元素对于每条边的头部或尾部节点分别为 +1 或 -1。如果为 False,则在两个节点处都显示 +1。

weight字符串或 None,可选(默认为 None)

用于提供矩阵中每个值的边数据键。如果为 None,则每条边的权重为 1。如果使用边权重,应为正值,以便方向可以提供符号。

dtypeNumPy 数据类型或 None(默认为 None)

输出稀疏数组的数据类型。此类型应与 weight 参数的类型兼容,例如,如果 weight 返回浮点数,则此参数也应为浮点数。如果为 None,则使用 SciPy 的默认设置。

返回值:
ASciPy 稀疏数组

G 的关联矩阵。

注意

对于 MultiGraph/MultiDiGraph,edgelist 中的边应为 (u,v,key) 三元组。

“网络是应用于数学中许多问题的最佳离散模型” [1]

参考文献

[1]

Gil Strang, Network applications: A = incidence matrix, http://videolectures.net/mit18085f07_strang_lec03/