mindspore.numpy.setdiff1d

mindspore.numpy.setdiff1d(ar1, ar2, assume_unique=False)[源代码]

计算两个Tensor的差集。返回在 ar1 中,不在 ar2 中的唯一值。

参数:
  • ar1 (Union[int, float, bool, list, tuple, Tensor]) - 输入Tensor。

  • ar2 (Union[int, float, bool, list, tuple, Tensor]) - 输入Tensor。

  • assume_unique (bool,可选) - 如果为 True ,则假定输入Tensor没有重复元素,这可以加速计算。如果为 Truear1ar2 有重复元素时,可能会导致不正确的结果或超出范围的索引。默认值: False

返回:

一维Tensor,包含在 ar1 中但不在 ar2 中的值。当 assume_uniqueFalse 时,结果会被排序,否则仅当输入已排序时才排序。

异常:
  • TypeError - 如果输入的 ar1ar2 不是类似数组的对象。

  • TypeError - 如果 assume_unique 不是bool类型。

支持平台:

Ascend GPU CPU

样例:

>>> import mindspore.numpy as np
>>> a = np.array([1, 2, 3, 2, 4, 1])
>>> b = np.array([3, 4, 5, 6])
>>> np.setdiff1d(a, b)
Tensor(shape=[2], dtype=Int32, value=[1, 2])