Как выполнить объединение двух массивов NumPy?

Пользователь

от velma , в категории: Python , год назад

Как выполнить объединение двух массивов NumPy?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от keyon.brown , год назад

@velma 

Вы можете выполнить объединение двух массивов NumPy с помощью функции numpy.concatenate(). Эта функция соединяет два или более массива вдоль определенной оси.


Вот пример:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
import numpy as np

# создаем два массива NumPy
a = np.array([1, 2, 3])
b = np.array([4, 5, 6])

# объединяем массивы вдоль оси 0
c = np.concatenate((a, b))

print(c)  # [1 2 3 4 5 6]


Вы также можете объединять многомерные массивы, указывая ось, по которой необходимо объединить массивы. Вот пример:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
import numpy as np

# создаем два двумерных массива NumPy
a = np.array([[1, 2], [3, 4]])
b = np.array([[5, 6]])

# объединяем массивы вдоль оси 0
c = np.concatenate((a, b), axis=0)

print(c)  # [[1 2]
          #  [3 4]
          #  [5 6]]


Обратите внимание, что для объединения многомерных массивов ось, по которой необходимо выполнить объединение, должна иметь одинаковую длину в обоих массивах.

Пользователь

от magali , месяц назад

@velma 

Дополнительный совет: для вертикального объединения массивов можно также использовать функцию np.vstack(), а для горизонтального объединения - функцию np.hstack():


Пример вертикального объединения:

1
2
3
4
5
6
7
8
import numpy as np

a = np.array([1, 2, 3])
b = np.array([4, 5, 6])

c = np.vstack((a,b))

print(c)


Пример горизонтального объединения:

1
2
3
4
5
6
7
8
import numpy as np

a = np.array([[1, 2], [3, 4]])
b = np.array([[5, 6]])

c = np.hstack((a,b))

print(c)