python 如何將numpy.matrix或數組轉換為scipy稀疏矩陣


1 Answers

scipy中有幾個稀疏矩陣類。

bsr_matrix(arg1 [,shape,dtype,copy,blocksize])塊稀疏行矩陣
coo_matrix(arg1 [,shape,dtype,copy])COOrdinate格式的稀疏矩陣。
csc_matrix(arg1 [,shape,dtype,copy])壓縮稀疏列矩陣
csr_matrix(arg1 [,shape,dtype,copy])壓縮的稀疏行矩陣
dia_matrix(arg1 [,shape,dtype,copy])具有DIAgonal存儲的稀疏矩陣
dok_matrix(arg1 [,shape,dtype,copy])基於密鑰的字典稀疏矩陣。
lil_matrix(arg1 [,shape,dtype,copy])基於行的鍊錶稀疏矩陣

他們中的任何一個都可以進行轉換。

import numpy as np
from scipy import sparse
a=np.array([[1,0,1],[0,0,1]])
b=sparse.csr_matrix(a)
print(b)

(0, 0)  1
(0, 2)  1
(1, 2)  1

http://docs.scipy.org/doc/scipy/reference/sparse.html#usage-information

python numpy scipy sparse-matrix

對於SciPy稀疏矩陣,可以使用todense()toarray()轉換為NumPy矩陣或數組。 反向的功能是什麼?

我搜索過,但不知道哪些關鍵詞應該是正確的。



Related