Почему трехмерные массивы печатаются так, как они есть? - PullRequest
0 голосов
/ 23 февраля 2019

Я пытаюсь обернуть голову вокруг трехмерных массивов (или многомерных массивов в целом), но это немного пугает меня.Особенно то, как печатается трехмерный массив, противоречит мне.Этот вопрос похож , но он больше касается различий между языками программирования, и я до сих пор не до конца его понимаю.Позвольте мне попытаться объяснить.

Скажем, я хочу создать трехмерный массив с 3 строками (длина), 5 столбцами (ширина) и 2 глубинами.Таким образом, матрица 3x5x2.

Я делаю следующее:

import numpy as np
a = np.zeros(30).reshape(3, 5, 2)

Для меня логичный способ напечатать это будет так:

[[[0. 0. 0. 0. 0.]  #We can still see three rows from top to bottom
  [0. 0. 0. 0. 0.]] #We can still see five columns from left to right

 [[0. 0. 0. 0. 0.]  #Depth values are shown underneath each other
  [0. 0. 0. 0. 0.]] 

 [[0. 0. 0. 0. 0.]
  [0. 0. 0. 0. 0.]]]

Однако, когда я печатаю этот массивон печатается так:

[[[0. 0.] #We can still see three rows from top to bottom,
  [0. 0.] #However columns now also appear from top to bottom instead of from left to right
  [0. 0.] #Depth values are now shown from left to right
  [0. 0.]
  [0. 0.]]

 [[0. 0.]
  [0. 0.]
  [0. 0.]
  [0. 0.]
  [0. 0.]]

 [[0. 0.]
  [0. 0.]
  [0. 0.]
  [0. 0.]
  [0. 0.]]]

Мне неочевидно, почему массив будет печататься таким образом.Может быть, это только я (может быть, здесь нет моих пространственных рассуждений), или есть какая-то конкретная причина, по которой массивы NumPy печатаются так?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...