numpy.tri#

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

一个在给定对角线及其下方填充 1,其他位置填充 0 的数组。

参数:
Nint

数组的行数。

Mint, optional

数组的列数。默认为 M 等于 N

kint, optional

数组填充 1 的对角线及其下方的索引。 k = 0 是主对角线,而 k < 0 是其下方, k > 0 是其上方。默认为 0。

dtypedtype, optional

返回数组的数据类型。默认为 float。

likearray_like, optional

用于创建非 NumPy 数组的引荐对象。如果传入的 like 支持 __array_function__ 协议,则结果将由它定义。在这种情况下,它确保创建与通过此参数传入的数组兼容的数组对象。

版本 1.20.0 中新增。

返回:
trishape 为 (N, M) 的 ndarray

数组的下三角部分填充 1,其他位置为 0;换句话说,对于 j <= i + kT[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.]])