代码详解:用Python构建邻域矩阵( 九 )

让我们用第二个例子来更清楚地说明一切 。 现在要创建的是逆对角矩阵:

array([[0 0 0 1
[0 0 1 0
[0 1 0 0
[1 0 0 0

)

此次的编码是:

i_index = [3 2 1 0
# <== this is the only change with respect to previous example!

j_index = [0 1 2 3

values = [1 1 1 1

matrix = sparse.coo_matrix((values (i_index j_index)) shape=(4 4))

注意:只有当矩阵规模相对较小时才能从稀疏表示切换到密集表示 , 否则会出现内存问题(稀疏矩阵存在的原因!)

如何创建W矩阵?

对于w矩阵 , j_index(即“列”)对应相邻索引:

j_index = indices.flatten()

推荐阅读