我正在使用非常大的稀疏矩阵,因此我使用scipy稀疏来节省内存。考虑以下代码
from scipy import sparse
from scipy.sparse import csc_matrix, linalg
from scipy.linalg import expm
A = sparse.eye(2, format='csc')
print(linalg.expm(A))
然后我没有得到警告。现在,如果我将A
更改为
A = sum(sparse.eye(2, format='csc') for i in range(5))
我得到了警告
SparseEfficiencyWarning: Changing the sparsity structure of a csc_matrix is expensive. lil_matrix is more efficient. SparseEfficiencyWarning)
请注意,只有在x
中的range(x)
大于4时才会显示此警告。此警告告诉我什么,如何解决?