Перемешивание массива NumPy по заданной оси

Учитывая следующий массив NumPy,

> a = array([[1, 2, 3, 4, 5], [1, 2, 3, 4, 5],[1, 2, 3, 4, 5]])

достаточно просто перемешать одну строку,

> shuffle(a[0])
> a
array([[4, 2, 1, 3, 5],[1, 2, 3, 4, 5],[1, 2, 3, 4, 5]])

Можно ли использовать нотация индексации для независимого перемешивания каждой строки? Или вам нужно перебирать массив. Я имел в виду что-то вроде

> numpy.shuffle(a[:])
> a
array([[4, 2, 3, 5, 1],[3, 1, 4, 5, 2],[4, 2, 1, 3, 5]]) # Not the real output

, хотя это явно не работает.

16
задан Sebastian 23 June 2011 в 14:16
поделиться