scipy.sparse.csgraph.

structural_rank#

scipy.sparse.csgraph.structural_rank(graph)#

计算具有给定稀疏模式的图(矩阵)的结构秩。

矩阵的结构秩是对应二部图的最大横截面的条目数,并且是矩阵数值秩的上限。如果可以排列元素使对角线无零,则图具有完整的结构秩。

在版本 0.19.0 中添加。

参数:
graph稀疏矩阵

输入稀疏矩阵。

返回值:
rankint

稀疏图的结构秩。

参考文献

[1]

I. S. Duff,"计算结构索引",SIAM J. Alg. Disc. Meth.,第 7 卷,594 (1986)。

示例

>>> from scipy.sparse import csr_matrix
>>> from scipy.sparse.csgraph import structural_rank
>>> graph = [
... [0, 1, 2, 0],
... [1, 0, 0, 1],
... [2, 0, 0, 3],
... [0, 1, 3, 0]
... ]
>>> graph = csr_matrix(graph)
>>> print(graph)
  (np.int32(0), np.int32(1))        1
  (np.int32(0), np.int32(2))        2
  (np.int32(1), np.int32(0))        1
  (np.int32(1), np.int32(3))        1
  (np.int32(2), np.int32(0))        2
  (np.int32(2), np.int32(3))        3
  (np.int32(3), np.int32(1))        1
  (np.int32(3), np.int32(2))        3
>>> structural_rank(graph)
4