flopscope.numpy.eye
fnp.eye(N, M=None, k=0, dtype=<class 'float'>, order='C', *, device=None, like=None)[flopscope source][numpy source]
Return a 2-D array with ones on the diagonal and zeros elsewhere.
Adapted from NumPy docs np.eye
Create identity matrix.
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.
- device:str, optional
The device on which to place the created array. Default: None. For Array-API interoperability only, so must be
"cpu"if passed.Added in version 2.0.0.- like:array_like, optional
Reference object to allow the creation of arrays which are not NumPy arrays. If an array-like passed in as
likesupports 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.Added in version 1.20.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
- we.flops.identity (almost) equivalent function
- we.flops.diag diagonal 2-D array from a 1-D array specified by the user.
Examples
>>> import flopscope.numpy as fnp
>>> flops.eye(2, dtype=int)
array([[1, 0],
[0, 1]])
>>> flops.eye(3, k=1)
array([[0., 1., 0.],
[0., 0., 1.],
[0., 0., 0.]])