numpy.dstack
numpy.dstack((a1, a2, ..., aN))
Функция dstack() соединяет массивы вдоль третьей оси. К двумерным массивам размером (MxN)
третья ось добавляется справа, что приводит к форме (MxNx1)
. К одномерным массивам длинной N
оси добавляются слева и справа, что приводит к форме (1xNx1)
.
-
- (a1, a2, ..., aN) - последовательность подобных массиву объектов
- Любые объекты которые могут быть преобразованы в массивы NumPy. Данные объекты должны иметь одинаковую форму по всем осям кроме третьей.
-
- ndarray - массив NumPy
- Массив который состоит из указанных массивов, соединенных вдоль третьей оси. Результирующий массив будет иметь минимум три измерения.
Замечание
Применение данной функции имеет наибольший смысл для массивов с размерностью меньшей или равной 3.
Примеры
>>> import numpy as np
>>>
>>> a = np.array([1, 1, 1])
>>> b = np.array([2, 2, 2])
>>>
>>> c = np.dstack((a, b))
>>> c
array([[[1, 2],
[1, 2],
[1, 2]]])
>>>
>>> c.shape
(1, 3, 2)
>>>
>>>
>>> a = np.array([[1, 1], [2, 2]])
>>> b = np.array([[3, 3], [4, 4]])
>>>
>>> c = np.dstack((a, b))
>>> c
array([[[1, 3],
[1, 3]],
[[2, 4],
[2, 4]]])
>>>
>>> c.shape
(2, 2, 2)
>>>
>>>
>>> a = np.arange(8).reshape(2, 2, 2)
>>> a
array([[[0, 1],
[2, 3]],
[[4, 5],
[6, 7]]])
>>>
>>> b = np.zeros((2, 2, 2))
>>> b
array([[[ 0., 0.],
[ 0., 0.]],
[[ 0., 0.],
[ 0., 0.]]])
>>>
>>> c = np.dstack((a, b))
>>> c
array([[[ 0., 1., 0., 0.],
[ 2., 3., 0., 0.]],
[[ 4., 5., 0., 0.],
[ 6., 7., 0., 0.]]])
>>>
>>> c.shape
(2, 2, 4)