У меня есть массив 3D numpy, и я хочу переместить его по блокам по определенной оси, сохраняя данные в этом блоке в исходном состоянии. Например, у меня есть массив формы np (50, 140, 23), и я хочу перемешать, создав блоки (50, 1, 23) по оси = 1. Таким образом, будет создано 140 блоков, и они должны быть перетасованы по оси = 1, сохраняя данные в блоках в первоначальном порядке. Я прочитал документацию о np.random.shuffle(x)
, но это только тасование по первой оси, и мы не можем предоставить ему размер блока. Есть ли какая-либо функция в numpy или быстрый способ сделать это?