mindspore.ops.NonZero

查看源文件
class mindspore.ops.NonZero[源代码]

返回所有非零元素的索引位置。

输入:
  • input (Tensor) - 输入Tensor。

    • Ascend: 其秩可以等于0,O2模式除外。

    • CPU/GPU: 其秩应大于等于1。

输出:

二维Tensor,数据类型为int64,包含所有输入中的非零元素的索引位置。 如果 input 的维数为 Dinput 中的非零个数为 N ,则输出的shape为 \((N, D)\)

异常:
  • TypeError - 如果 input 不是Tensor。

  • RuntimeError - 在CPU或者GPU或者Ascend的O2模式中,如果 input 的维度为0。

支持平台:

Ascend GPU CPU

样例:

>>> import mindspore
>>> import numpy as np
>>> from mindspore import Tensor, ops
>>> input = Tensor(np.array([1, 0, 2, 0, 3]), mindspore.int32)
>>> output = ops.NonZero()(input)
>>> print(output)
[[0]
 [2]
 [4]]