y_train
и y_test
- векторы, содержащие метку, связанную с каждым изображением в x_train и x_test соответственно.Это скажет вам цифру, показанную на каждом изображении.Так что просто получите индексы, которые будут сортировать эти векторы, используя np.argsort
, а затем используйте эти индексы, чтобы переупорядочить соответствующую матрицу.
import numpy as np
idx = np.argsort(y_train)
x_train_sorted = x_train[idx]
y_train_sorted = y_train[idx]
Поэтому, если вы хотите, чтобы все изображения были для определенной цифры, вы можете просто получить их, проиндексировав соответствующую матрицу
x_train_zeros = x_train[y_train == 0]
x_train_ones = x_train[y_train == 1]
# and so on...
Обратите внимание, что в этом случае вам не нужнопредварительно отсортировать данные.