scipy.io.

hb_read#

scipy.io.hb_read(path_or_open_file, *, spmatrix=True)[source]#

Read HB-format file.

Parameters:
path_or_open_filepath-like or file-like

If a file-like object, it is used as-is. Otherwise, it is opened before reading.

spmatrixbool, optional (default: True)

If True, return sparse coo_matrix. Otherwise return coo_array.

Returns:
datacsc_array or csc_matrix

The data read from the HB file as a sparse array.

Notes

At the moment not the full Harwell-Boeing format is supported. Supported features are:

  • assembled, non-symmetric, real matrices

  • integer for pointer/indices

  • exponential format for float values, and int format

Examples

We can read and write a harwell-boeing format file:

>>> from scipy.io import hb_read, hb_write
>>> from scipy.sparse import csr_array, eye
>>> data = csr_array(eye(3))  # create a sparse array
>>> hb_write("data.hb", data)  # write a hb file
>>> print(hb_read("data.hb", spmatrix=False))  # read a hb file
<Compressed Sparse Column sparse array of dtype 'float64'
    with 3 stored elements and shape (3, 3)>
    Coords  Values
    (0, 0)  1.0
    (1, 1)  1.0
    (2, 2)  1.0