eye

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

Return a 2-D COO array 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.
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:

COO array of shape (N, M)

Examples

>>> eye(2, dtype=int).todense()  # doctest: +NORMALIZE_WHITESPACE
array([[1, 0],
       [0, 1]])
>>> eye(3, k=1).todense()  # doctest: +SKIP
array([[0., 1., 0.],
       [0., 0., 1.],
       [0., 0., 0.]])