Я работаю с трехмерными массивами numpy, и у меня возникли проблемы с объединением двух из них. Вот что я пытаюсь сделать:
Код: Выделить всё
import numpy as np
grid = np.arange(16).reshape((1, 4, 4))
grid2 = grid[:, :-1, ::-1].copy()
Я ожидал, что смогу объединить Grid и Grid2 с помощью np.concatenate по оси=0, вот так:< /p>
Но это не работает, равно как и np.vstack или np.dstack (я заметил, что vstack работает только в 1D и 2D массивы). Я проверил фигуры и подумал, что они выровняются, поскольку обе они получены из сетки, но это не работает.
Вот пример более простой конкатенации это работает так, как ожидалось:
Код: Выделить всё
x = np.arange(1, 9).reshape((2, 4))
y = np.arange(4)
np.vstack((x, y)) # Works perfectly
Почему объединение Grid и Grid2 не работает, в то время как более простые случаи, такие как x и y, работают нормально? Есть ли какое-то конкретное правило или ограничение в numpy, которое мне здесь не хватает?"
Подробнее здесь:
https://stackoverflow.com/questions/791 ... -2d-arrays