У меня большой многомерный массив, и я хотел бы выбрать меньший подмассив со случайными индексами из указанного нового размера. Примером функциональности, которую я хочу, может быть:
import numpy as np
X = np.random.rand(100,100,100,11,11,11) # array of size (100,100,100,11,11,11)
mask = np.random.rand(X.shape[0],X.shape[1],X.shape[2]) > 0.5 # Boolean mask of size (100,100,100)
X = X[mask]
Теперь это создает массив размером: X.shape=(500064,11,11,11)
, но я хотел бы что-то, что не уменьшает размеры. Примером может быть такой результат: (63,44,78,11,11,11)
.
Возможно ли это сделать?