numpy.rollaxis#

numpy.rollaxis(a, axis, start=0)[source]#

向后滚动指定的轴,直到它位于给定的位置。

此函数仍受支持以向后兼容,但您应优先使用 moveaxismoveaxis 函数已于 NumPy 1.11 添加。

参数:
andarray

输入数组。

axisint

将被滚动到的轴。其他轴相对于彼此的位置不变。

startint, optional

start <= axis 时,轴向后滚动直到位于该位置。当 start > axis 时,轴向前滚动直到位于该位置之前。默认值 0 会产生“完全”滚动。下表描述了 start 的负值如何解释

start

标准化 start

-(arr.ndim+1)

引发 AxisError

-arr.ndim

0

-1

arr.ndim-1

0

0

arr.ndim

arr.ndim

arr.ndim + 1

引发 AxisError

返回:
resndarray

对于 NumPy >= 1.10.0,始终返回 a 的视图。对于早期 NumPy 版本,仅当轴的顺序更改时才返回 a 的视图,否则返回输入数组。

另请参阅

moveaxis

将数组轴移动到新位置。

roll

沿给定轴将数组的元素滚动指定数量的位置。

示例

>>> import numpy as np
>>> a = np.ones((3,4,5,6))
>>> np.rollaxis(a, 3, 1).shape
(3, 6, 4, 5)
>>> np.rollaxis(a, 2).shape
(5, 3, 4, 6)
>>> np.rollaxis(a, 1, 4).shape
(3, 5, 6, 4)