mindspore.ops.roll

查看源文件
mindspore.ops.roll(input, shifts, dims=None)[源代码]

按维度移动tensor的元素。

参数:
  • input (Tensor) - 输入tensor。

  • shifts (Union[list(int), tuple(int), int]) - 元素移动量。

  • dims (Union[list(int), tuple(int), int], 可选) - 指定移动维度,默认 None ,表示将输入tensor展平后再进行计算,然后将计算结果reshape为输入的shape。

返回:

Tensor

支持平台:

Ascend GPU

样例:

>>> import mindspore
>>> input = mindspore.tensor([0, 1, 2, 3, 4], mindspore.float32)
>>> # case1: Parameter `shifts` is positive
>>> output = mindspore.ops.roll(input, shifts=2, dims=0)
>>> print(output)
[3. 4. 0. 1. 2.]
>>> # case2: Parameter `shifts` is negative
>>> output = mindspore.ops.roll(input, shifts=-2, dims=0)
>>> print(output)
[2. 3. 4. 0. 1.]