在python中使用稀疏矩阵时如何避免负值?
我正在使用稀疏矩阵编写以下代码在python中使用稀疏矩阵时如何避免负值?,python,adjacency-matrix,Python,Adjacency Matrix,我正在使用稀疏矩阵编写以下代码 def Transition_Matrix(adj,beta): Iden = sp.eye(adj.shape[0]) adj = sp.coo_matrix(adj) rowsum = np.array(adj.sum(1)) degree_mat_inv_sqrt = sp.diags(np.power(rowsum, -0.5).flatten() adj_normalized = adj.dot(degree_ma
def Transition_Matrix(adj,beta):
Iden = sp.eye(adj.shape[0])
adj = sp.coo_matrix(adj)
rowsum = np.array(adj.sum(1))
degree_mat_inv_sqrt = sp.diags(np.power(rowsum, -0.5).flatten()
adj_normalized = adj.dot(degree_mat_inv_sqrt).tocoo()
matrix_=Iden-(beta * adj_normalized)
****print(matrix_)**** this is the result
here beta=0.9
1. -0.3 -0.28460499 ... -0.36742346 0.
0. ]
[-0.225 1. -0.28460499 ... 0. 0.
0. ]
[-0.225 -0.3 1. ... 0. -0.25980762
0. ]
...
[-0.225 0. 0. ... 1. -0.25980762
-0.21828206]
[ 0. 0. -0.28460499 ... -0.36742346 1.
-0.21828206]
[ 0. 0. 0. ... -0.36742346 -0.25980762
1. ]]
matrixinv=np.linalg.pinv(matrix_)
Transition=(1-beta)*matrixinv
return Transition
输入是稀疏矩阵:adj=nx.to\u scipy\u sparse\u矩阵(G)
如何避免这种负值?任何帮助都将不胜感激