Как объединить массивы в Python (с примерами)


Самый простой способ объединить массивы в Python — использовать функцию numpy.concatenate , которая использует следующий синтаксис:

numpy.concatenate ((a1, a2, ….), ось = 0)

куда:

  • a1, a2…: последовательность массивов
  • ось: ось, вдоль которой будут соединяться массивы. По умолчанию 0.

В этом руководстве представлено несколько примеров использования этой функции на практике.

Пример 1: объединение двух массивов

В следующем коде показано, как объединить два одномерных массива:

import numpy as np

#create two arrays
arr1 = np.array([1, 2, 3, 4, 5])
arr2 = np.array([6, 7, 8])

#concatentate the two arrays
np.concatenate ((arr1, arr2))

[1, 2, 3, 4, 5, 6, 7, 8]

В следующем коде показано, как объединить два двумерных массива:

import numpy as np

#create two arrays
arr1 = np.array([[3, 5], [9, 9], [12, 15]])
arr2 = np.array([[4, 0]])

#concatentate the two arrays
np.concatenate ((arr1, arr2), axis= 0 )

array([[3, 5],
 [9, 9],
 [12, 15],
 [4, 0]])

#concatentate the two arrays and flatten the result
np.concatenate ((arr1, arr2), axis= None )

array([3, 5, 9, 9, 12, 15, 4, 0])

Пример 2. Объединение более двух массивов

Мы можем использовать аналогичный код для объединения более двух массивов:

import numpy as np

#create four arrays
arr1 = np.array([[3, 5], [9, 9], [12, 15]])
arr2 = np.array([[4, 0]])
arr3 = np.array([[1, 1]])
arr4 = np.array([[8, 8]])

#concatentate all the arrays
np.concatenate ((arr1, arr2, arr3, arr4), axis= 0 )

array([[3, 5],
 [9, 9],
 [12, 15],
 [4, 0],
 [1, 1],
 [8, 8]])

#concatentate all the arrays and flatten the result
np.concatenate ((arr1, arr2, arr3, arr4), axis= None )

array([3, 5, 9, 9, 12, 15, 4, 0, 1, 1, 8, 8])

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять аналогичные операции в NumPy:

Как создать фрейм данных Pandas из массива NumPy
Как добавить массив Numpy в фрейм данных Pandas