SciPy

numpy.eye

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

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

order : {‘C’, ‘F’}, optional

Whether the output should be stored in row-major (C-style) or column-major (Fortran-style) order in memory.

New in version 1.14.0.

Returns:
I : ndarray 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

identity
(almost) equivalent function
diag
diagonal 2-D array from a 1-D array specified by the user.

Examples

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

Previous topic

numpy.empty_like

Next topic

numpy.identity