It seems that numpy universal functions only apply to ndarray (or dense
matrix). Is there a way to apply them to scipy sparse matrices also?

For example, suppose S is an large sparse matrix (lil_matrix format,
dtype=np.float). I want to get another sparse matrix B (of the same shape)
that represents the signs of corresponding entries of S.

I wrote down "B=np.sign(S)" first, but it did not give me the desired
output. I realized that np.sign() might not work for a sparse matrix, so I
have to convert S to a dense matrix, i.e.

B = np.sign( S.todense() )

However, converting a large sparse matrix to dense would easily eat up the
memory. Is there a way for np.sign (as well as other ufunc) to take a sparse
matrix as parameter, and return a sparse matrix?

(If I recall correctly, in Matlab all functions work on both dense matrices
and sparse matrices.)

--
Pengkui
_______________________________________________
NumPy-Discussion mailing list
[email protected]
http://mail.scipy.org/mailman/listinfo/numpy-discussion

Reply via email to