numpy.random.Generator.permutation — NumPy v2.2 Manual (original) (raw)

method

random.Generator.permutation(x, axis=0)#

Randomly permute a sequence, or return a permuted range.

Parameters:

xint or array_like

If x is an integer, randomly permute np.arange(x). If x is an array, make a copy and shuffle the elements randomly.

axisint, optional

The axis which x is shuffled along. Default is 0.

Returns:

outndarray

Permuted sequence or array range.

Examples

rng = np.random.default_rng() rng.permutation(10) array([1, 7, 4, 3, 0, 9, 2, 5, 8, 6]) # random

rng.permutation([1, 4, 9, 12, 15]) array([15, 1, 9, 4, 12]) # random

arr = np.arange(9).reshape((3, 3)) rng.permutation(arr) array([[6, 7, 8], # random [0, 1, 2], [3, 4, 5]])

rng.permutation("abc") Traceback (most recent call last): ... numpy.exceptions.AxisError: axis 0 is out of bounds for array of dimension 0

arr = np.arange(9).reshape((3, 3)) rng.permutation(arr, axis=1) array([[0, 2, 1], # random [3, 5, 4], [6, 8, 7]])