scipy.sparse.

eye#

scipy.sparse.eye(m, n=None, k=0, dtype=<class 'float'>, format=None)[source]#

Sparse matrix with ones on diagonal

Returns a sparse matrix (m x n) where the kth diagonal is all ones and everything else is zeros.

Parameters:
mint

Number of rows in the matrix.

nint, optional

Number of columns. Default: m.

kint, optional

Diagonal to place ones on. Default: 0 (main diagonal).

dtypedtype, optional

Data type of the matrix.

formatstr, optional

Sparse format of the result, e.g., format=”csr”, etc.

.. warning::

This function returns a sparse matrix – not a sparse array. You are encouraged to use eye_array to take advantage of the sparse array functionality.

Examples

>>> import numpy as np
>>> import scipy as sp
>>> sp.sparse.eye(3).toarray()
array([[ 1.,  0.,  0.],
       [ 0.,  1.,  0.],
       [ 0.,  0.,  1.]])
>>> sp.sparse.eye(3, dtype=np.int8)
<DIAgonal sparse matrix of dtype 'int8'
    with 3 stored elements (1 diagonals) and shape (3, 3)>