numpy.random.Generator.shuffle#

方法

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

通过随机排列其内容来就地修改数组或序列。

子数组的顺序会发生变化,但其内容保持不变。

参数:
xndarray 或 MutableSequence

要随机排列的数组、列表或可变序列。

axisint,可选

x 沿其随机排列的轴。默认为 0。仅在 ndarray 对象上支持。

返回值:
None

另请参阅

permuted
permutation

备注

方法 shufflepermuted 之间的一个重要区别是它们如何处理 axis 参数,这可以在 处理轴参数 中找到。

示例

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