Question

I have a very large Scipy sparse (csr) matrix. I can't use M.toarray() since it triggers ValueError: array is too big. Is there a way of saving a Scipy sparse matrix in Python to be read in Matlab? I need some tools that are available in Matlab.

Was it helpful?

Solution

Scipy's Mat file format tools support sparse matrices:

from scipy import sparse, io
m = sparse.rand(50000,50000,density=1e-8)
io.savemat('dump.mat', dict(m=m))

And in matlab:

>> load dump
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top