mindspore.ops.triu
- mindspore.ops.triu(input, diagonal=0)[源代码]
返回输入Tensor input 的上三角形部分(包含对角线和下面的元素),并将其他元素设置为0。
警告
这是一个实验性API,后续可能修改或删除。
- 参数:
input (Tensor) - shape是 \((M, N, *)\) 的Tensor,其中*表示任意数量的维度。
diagonal (int,可选) - 指定对角线位置,默认值:
0
,指定主对角线。
- 返回:
Tensor,其数据类型和shape与 input 相同。
- 异常:
TypeError - 如果 diagonal 不是int。
TypeError - 如果 input 不是Tensor。
ValueError - 如果 input 的shape的长度小于2。
- 支持平台:
Ascend
GPU
CPU
样例:
>>> import numpy as np >>> from mindspore import Tensor, ops >>> x = Tensor(np.array([[ 1, 2, 3, 4], ... [ 5, 6, 7, 8], ... [10, 11, 12, 13], ... [14, 15, 16, 17]])) >>> result = ops.triu(x) >>> print(result) [[ 1 2 3 4] [ 0 6 7 8] [ 0 0 12 13] [ 0 0 0 17]] >>> x = Tensor(np.array([[ 1, 2, 3, 4], ... [ 5, 6, 7, 8], ... [10, 11, 12, 13], ... [14, 15, 16, 17]])) >>> result = ops.triu(x, diagonal=1) >>> print(result) [[ 0 2 3 4] [ 0 0 7 8] [ 0 0 0 13] [ 0 0 0 0]] >>> x = Tensor(np.array([[ 1, 2, 3, 4], ... [ 5, 6, 7, 8], ... [10, 11, 12, 13], ... [14, 15, 16, 17]])) >>> result = ops.triu(x, diagonal=-1) >>> print(result) [[ 1 2 3 4] [ 5 6 7 8] [ 0 11 12 13] [ 0 0 16 17]]