2015-01-30 3 views
0

У меня есть массив numpy с размерами (28, 28, 60000), содержащий 60000 изображений 28x28, представленных в виде яркости пикселей. Я пытаюсь преобразовать его так, что у меня есть массив 60000 x 784, причем 784 представляет исходное изображение 28x28 в основном формате строки. Как мне это сделать? Я предполагаю, что я использую numpy.reshape, но я не уверен, как он меняет ситуацию. Пример:3D-массив с 3D-массивом до массивных массивов 2D строк

[[1,2],  [[1,2,3,4], 
[3,4]]   [5,6,7,8]] 
...  -> 
[[5,6], 
[7,8]] 

ответ

1

Этот код:

import numpy 
a = numpy.array([[[1,2],[3,4]],[[5,6],[7,8]]]) 
print(numpy.reshape(a, (2,4))) 

возвратов:

[[1 2 3 4] 
[5 6 7 8]] 
0

Попробуйте поэкспериментировать с чем-то вроде этого:

a = np.arange(6).reshape((3, 2)) 
b = np.reshape(a, (1, 6)) 
print a 
print b 
a = 
[[0 1] 
[2 3] 
[4 5]] 
b = [[0 1 2 3 4 5]]