mindspore.ops.combinations

mindspore.ops.combinations(input, r=2, with_replacement=False)[源代码]

返回输入Tensor中元素的所有长度为 r 的子序列。

with_replacement 设为 False ,功能与Python里的 itertools.combinations 类似,若设为 True ,功能与 itertools.combinations_with_replacement 一致。

参数:
  • input (Tensor) - 一维Tensor。

  • r (int,可选) - 进行组合的元素个数。默认值: 2

  • with_replacement (bool,可选) - 是否允许组合存在重复值。默认值: False

返回:

Tensor,包含输入Tensor元素的左右组合值。

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

  • TypeError - 如果 r 不是int类型。

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

  • ValueError - 如果 input 不是一维。

支持平台:

Ascend GPU CPU

样例:

>>> from mindspore import Tensor, ops
>>> input = Tensor([1, 3, -1, 0, 4])
>>> output = ops.combinations(input)
>>> print(output.asnumpy())
[[ 1  3]
 [ 1 -1]
 [ 1  0]
 [ 1  4]
 [ 3 -1]
 [ 3  0]
 [ 3  4]
 [-1  0]
 [-1  4]
 [ 0  4]]