eye

sparse.eye(N, M=None, k=0, dtype=<class 'float'>, format='coo', **kwargs)[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.

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.]])