biadjacency_matrix#
- biadjacency_matrix(G, row_order, column_order=None, dtype=None, weight='weight', format='csr')[源码]#
返回二分图 G 的双邻接矩阵。
设
G = (U, V, E)
是一个二分图,其节点集分别为U = u_{1},...,u_{r}
和V = v_{1},...,v_{s}
。双邻接矩阵 [1] 是一个r
xs
矩阵B
,其中b_{i,j} = 1
当且仅当(u_i, v_j) in E
。如果参数weight
不是None
并且与边的属性名匹配,则使用该属性值代替 1。- 参数:
- G图
NetworkX 图
- row_order节点列表
矩阵的行按照节点列表进行排序。
- column_order列表, 可选
矩阵的列按照节点列表进行排序。如果 column_order 为 None,则列的顺序是任意的。
- dtypeNumPy 数据类型, 可选
用于初始化数组的有效 NumPy dtype。如果为 None,则使用 NumPy 默认值。
- weight字符串或 None, 可选 (默认值为 'weight')
用于提供矩阵中每个值的边数据键。如果为 None,则每条边的权重为 1。
- format字符串,取值为 {‘bsr’, ‘csr’, ‘csc’, ‘coo’, ‘lil’, ‘dia’, ‘dok’}
要返回的矩阵类型 (默认为 'csr')。对于某些算法,不同的稀疏矩阵实现可能会有更好的性能。详情请参阅 [2]。
- 返回:
- MSciPy 稀疏数组
二分图 G 的双邻接矩阵表示。
另请参阅
adjacency_matrix
from_biadjacency_matrix
注意
不检查输入图是否为二分图。
对于有向二分图,仅将后继节点视为邻居。要获得一个包含前驱和后继节点(值为 1 或权重值)的邻接矩阵,您必须生成两个双邻接矩阵,其中一个的行是另一个的列,然后将一个矩阵与另一个的转置相加。
参考文献