eye

sparse.eye(N, M=None, k=0, dtype=<class 'float'>, format='coo', compressed_axes=None)[source]

Return a 2-D array in the specified format with ones on the diagonal and zeros elsewhere.

Parameters
  • N (int) – Number of rows in the output.

  • M (int, optional) – Number of columns in the output. If None, defaults to N.

  • k (int, optional) – Index of the diagonal: 0 (the default) refers to the main diagonal, a positive value refers to an upper diagonal, and a negative value to a lower diagonal.

  • dtype (data-type, optional) – Data-type of the returned array.

  • format (str, optional) – A format string.

  • compressed_axes (iterable, optional) – The axes to compress if returning a GCXS array.

Returns

I – An array where all elements are equal to zero, except for the k-th diagonal, whose values are equal to one.

Return type

SparseArray of shape (N, M)

Examples

>>> eye(2, dtype=int).todense()  
array([[1, 0],
       [0, 1]])
>>> eye(3, k=1).todense()  
array([[0., 1., 0.],
       [0., 0., 1.],
       [0., 0., 0.]])