numpy.rollaxis

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

Roll the specified axis backwards, until it lies in a given position.

This function continues to be supported for backward compatibility, but you should prefer moveaxis. The moveaxis function was added in NumPy 1.11.

Parameters
andarray

Input array.

axisint

The axis to be rolled. The positions of the other axes do not change relative to one another.

startint, optional

When start <= axis, the axis is rolled back until it lies in this position. When start > axis, the axis is rolled until it lies before this position. The default, 0, results in a “complete” roll. The following table describes how negative values of start are interpreted:

start

Normalized start

-(arr.ndim+1)

raise AxisError

-arr.ndim

0

-1

arr.ndim-1

0

0

arr.ndim

arr.ndim

arr.ndim + 1

raise AxisError

Returns
resndarray

For NumPy >= 1.10.0 a view of a is always returned. For earlier NumPy versions a view of a is returned only if the order of the axes is changed, otherwise the input array is returned.

See also

moveaxis

Move array axes to new positions.

roll

Roll the elements of an array by a number of positions along a given axis.

Examples

>>> 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)