numpy.eye — NumPy v2.2 Manual (original) (raw)
numpy.eye(N, M=None, k=0, dtype=<class 'float'>, order='C', *, device=None, like=None)[source]#
Return a 2-D array with ones on the diagonal and zeros elsewhere.
Parameters:
Nint
Number of rows in the output.
Mint, optional
Number of columns in the output. If None, defaults to N.
kint, 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.
dtypedata-type, optional
Data-type of the returned array.
order{‘C’, ‘F’}, optional
Whether the output should be stored in row-major (C-style) or column-major (Fortran-style) order in memory.
devicestr, optional
The device on which to place the created array. Default: None. For Array-API interoperability only, so must be "cpu"
if passed.
New in version 2.0.0.
likearray_like, optional
Reference object to allow the creation of arrays which are not NumPy arrays. If an array-like passed in as like
supports the __array_function__
protocol, the result will be defined by it. In this case, it ensures the creation of an array object compatible with that passed in via this argument.
New in version 1.20.0.
Returns:
Indarray of shape (N,M)
An array where all elements are equal to zero, except for the _k_-th diagonal, whose values are equal to one.
See also
(almost) equivalent function
diagonal 2-D array from a 1-D array specified by the user.
Examples
import numpy as np np.eye(2, dtype=int) array([[1, 0], [0, 1]]) np.eye(3, k=1) array([[0., 1., 0.], [0., 0., 1.], [0., 0., 0.]])