Почему я не могу объединить 3D-массивы с помощью np.concatenate в numpy, в то время как 1D- и 2D-массивы работают?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Почему я не могу объединить 3D-массивы с помощью np.concatenate в numpy, в то время как 1D- и 2D-массивы работают?

Сообщение Anonymous »

Я работаю с трехмерными массивами 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.concatenate((grid, grid2), axis=0)
Но это не работает, равно как и 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
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»