Как уже упоминалось в комментариях, 23760! = 240 * 1 * 28 * 28, поэтому преобразование в этот конкретный массив невозможно.На самом деле, 28 * 28 даже не делит 23760, поэтому даже если train.shape[0]
заменить чем-то другим, это никогда не сработает.
Предполагая, что train.shape[0]
и 1
- это то, что вы хотитеиспользуйте для первых двух измерений, конечные измерения должны иметь произведение 23760/240 = 99. Поскольку это не квадратное число, эти два числа должны будут отличаться.Первичная факторизация 99 равна 99 = 3 * 3 * 11, поэтому единственно возможными вариантами являются
(240, 1, 1, 99), (240, 1, 3, 33), (240, 1, 9, 11),
и их перестановки.