numpy.tri#

numpy.tri(N, M=None, k=0, dtype=<class 'float'>, *, like=None)[源代码]#

一个在给定对角线及以下位置为1,其他位置为0的数组.

参数:
Nint

数组中的行数.

Mint, 可选

数组的列数.默认情况下,`M` 取值等于 N.

kint, 可选

数组填充的次对角线及以下部分.`k` = 0 是主对角线,而 k < 0 在其下方,`k` > 0 在其上方.默认值是 0.

dtypedtype, 可选

返回数组的数据类型.默认是浮点型.

likearray_like, 可选

引用对象以允许创建不是 NumPy 数组的数组.如果作为 like 传递的类数组对象支持 __array_function__ 协议,结果将由它定义.在这种情况下,它确保创建一个与通过此参数传递的对象兼容的数组对象.

在 1.20.0 版本加入.

返回:
tri形状为 (N, M) 的 ndarray

数组,其下三角填充为1,其他地方为0;换句话说,对于 j <= i + k,``T[i,j] == 1``,否则为0.

示例

>>> import numpy as np
>>> np.tri(3, 5, 2, dtype=int)
array([[1, 1, 1, 0, 0],
       [1, 1, 1, 1, 0],
       [1, 1, 1, 1, 1]])
>>> np.tri(3, 5, -1)
array([[0.,  0.,  0.,  0.,  0.],
       [1.,  0.,  0.,  0.,  0.],
       [1.,  1.,  0.,  0.,  0.]])