I would like to know the best way to check if a scipy sparse matrix, if CSC or CSR. Right now I'm using.
我想知道检查scipy稀疏矩阵的最佳方法,如果CSC或CSR。现在我正在使用。
rows, cols = X.shape()
indptr = X.indptr()
if len(indptr) == cols + 1:
print "csc"
else:
print "csr"
Thanks.
谢谢。
2 个解决方案
#1
7
It looks like you could use the .getformat()
method:
看起来你可以使用.getformat()方法:
>>> m0 = scipy.sparse.csc_matrix([1])
>>> m0.getformat()
'csc'
>>> m1 = scipy.sparse.csr_matrix([1])
>>> m1.getformat()
'csr'
#2
1
You could check the class
你可以查看课程
m0=sparse.csc_matrix([1])
In [4]: type(m0).__name__
Out[4]: 'csc_matrix'
In [5]: isinstance(m0,sparse.csc_matrix)
Out[5]: True
In [6]: isinstance(m0,sparse.csr_matrix)
Out[6]: False
In [9]: sparse.isspmatrix_csc(m0)
Out[9]: True
In [10]: sparse.isspmatrix_csc??
...
def isspmatrix_csc(x):
return isinstance(x, csc_matrix)
#1
7
It looks like you could use the .getformat()
method:
看起来你可以使用.getformat()方法:
>>> m0 = scipy.sparse.csc_matrix([1])
>>> m0.getformat()
'csc'
>>> m1 = scipy.sparse.csr_matrix([1])
>>> m1.getformat()
'csr'
#2
1
You could check the class
你可以查看课程
m0=sparse.csc_matrix([1])
In [4]: type(m0).__name__
Out[4]: 'csc_matrix'
In [5]: isinstance(m0,sparse.csc_matrix)
Out[5]: True
In [6]: isinstance(m0,sparse.csr_matrix)
Out[6]: False
In [9]: sparse.isspmatrix_csc(m0)
Out[9]: True
In [10]: sparse.isspmatrix_csc??
...
def isspmatrix_csc(x):
return isinstance(x, csc_matrix)