numpy.eye#
- numpy.eye(N, M=None, k=0, dtype=<class 'float'>, order='C', *, device=None, like=None)[source]#
返回一个二维数组,对角线上的元素为 1,其他元素为 0。
- 参数:
- Nint
输出数组的行数。
- Mint, 可选
输出数组的列数。如果为 None,则默认为 N。
- kint, 可选
对角线的索引:0(默认值)表示主对角线,正值表示上对角线,负值表示下对角线。
- dtype数据类型, 可选
返回数组的数据类型。
- order{'C', 'F'}, 可选
输出数组在内存中是以行优先(C 样式)还是列优先(Fortran 样式)存储。
- devicestr, 可选
放置创建数组的设备。默认值:None。仅用于 Array-API 互操作性,因此如果传递,则必须为
"cpu"
。2.0.0 版本的新功能。
- likearray_like, 可选
参考对象,允许创建非 NumPy 数组的数组。如果作为
like
传入的类数组支持__array_function__
协议,则结果将由其定义。在这种情况下,它确保创建与通过此参数传入的数组对象兼容的数组对象。1.20.0 版本的新功能。
- 返回:
- I形状为 (N,M) 的 ndarray
一个数组,其中所有元素都等于零,除了 k 次对角线上的元素等于一。
示例
>>> 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.]])