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