NumPy 和 SciPy - .todense() 和 .toarray() 之间的区别
NumPy and SciPy - Difference between .todense() and .toarray()
我想知道在稀疏 NumPy 数组上使用 .toarray()
与 .todense()
是否有任何区别 (advantage/disadvantage)。例如,
import scipy as sp
import numpy as np
sparse_m = sp.sparse.bsr_matrix(np.array([[1,0,0,0,1], [1,0,0,0,1]]))
%timeit sparse_m.toarray()
1000 loops, best of 3: 299 µs per loop
%timeit sparse_m.todense()
1000 loops, best of 3: 305 µs per loop
toarray
returns 一个 ndarray; todense
returns 一个矩阵。如果你想要一个矩阵,使用todense
;否则,使用 toarray
.
我想知道在稀疏 NumPy 数组上使用 .toarray()
与 .todense()
是否有任何区别 (advantage/disadvantage)。例如,
import scipy as sp
import numpy as np
sparse_m = sp.sparse.bsr_matrix(np.array([[1,0,0,0,1], [1,0,0,0,1]]))
%timeit sparse_m.toarray()
1000 loops, best of 3: 299 µs per loop
%timeit sparse_m.todense()
1000 loops, best of 3: 305 µs per loop
toarray
returns 一个 ndarray; todense
returns 一个矩阵。如果你想要一个矩阵,使用todense
;否则,使用 toarray
.