scipy.io.mmread#
- scipy.io.mmread(source)[source]#
Reads the contents of a Matrix Market file-like ‘source’ into a matrix.
- Parameters:
- sourcestr or file-like
Matrix Market filename (extensions .mtx, .mtz.gz) or open file-like object.
- Returns:
- andarray or coo_matrix
Dense or sparse matrix depending on the matrix format in the Matrix Market file.
Notes
Changed in version 1.12.0: C++ implementation.
Examples
>>> from io import StringIO >>> from scipy.io import mmread
>>> text = '''%%MatrixMarket matrix coordinate real general ... 5 5 7 ... 2 3 1.0 ... 3 4 2.0 ... 3 5 3.0 ... 4 1 4.0 ... 4 2 5.0 ... 4 3 6.0 ... 4 4 7.0 ... '''
mmread(source)
returns the data as sparse matrix in COO format.>>> m = mmread(StringIO(text)) >>> m <5x5 sparse matrix of type '<class 'numpy.float64'>' with 7 stored elements in COOrdinate format> >>> m.A array([[0., 0., 0., 0., 0.], [0., 0., 1., 0., 0.], [0., 0., 0., 2., 3.], [4., 5., 6., 7., 0.], [0., 0., 0., 0., 0.]])
This method is threaded. The default number of threads is equal to the number of CPUs in the system. Use threadpoolctl to override:
>>> import threadpoolctl >>> >>> with threadpoolctl.threadpool_limits(limits=2): ... m = mmread(StringIO(text))