numpy.concatenate

numpy.concatenate 함수는 어레이의 시퀀스를 지정한 축을 따라 연결합니다.



예제1

import numpy as np

list1 = [1, 2, 3]
list2 = [4, 5, 6]
print(list1 + list2)

arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])
print(arr1 + arr2)
[1, 2, 3, 4, 5, 6]
[5 7 9]

예제와 같이 Python의 리스트와 NumPy의 어레이에 대해 더하기 연산 (+)은 다르게 동작합니다.

Python 리스트가 두 리스트를 연결하는 반면,

NumPy의 어레이에 대해 더하기 연산은 각 요소의 값을 서로 더합니다.



예제2

import numpy as np

arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])

conc_arr = np.concatenate((arr1, arr2))
print(conc_arr)
[1 2 3 4 5 6]

np.concatenate((arr1, arr2))은 Python 리스트의 더하기 연산과 같이 두 어레이를 연결한 어레이를 반환합니다.



예제3

import numpy as np

arr1 = np.array([[1, 2, 3]])
arr2 = np.array([[4, 5, 6]])
conc_arr_axis0 = np.concatenate((arr1, arr2), axis=0)
conc_arr_axis1 = np.concatenate((arr1, arr2), axis=1)
print(conc_arr_axis0)
print(conc_arr_axis1)
[[1 2 3]
[4 5 6]]
[[1 2 3 4 5 6]]

axis=0으로 지정하면, 첫번째 축을 따라 어레이를 연결하고,

axis=1로 지정하면, 두번째 축을 따라 어레이를 연결합니다.



예제4

import numpy as np

arr1 = np.array([[1, 2], [3, 4]])
arr2 = np.array([[5, 6]])

conc_arr_axis0 = np.concatenate((arr1, arr2), axis=0)
print(conc_arr_axis0)

conc_arr_axis1 = np.concatenate((arr1, arr2.T), axis=1)
print(conc_arr_axis1)
[[1 2]
[3 4]
[5 6]]
[[1 2 5]
[3 4 6]]

예제3과 마찬가지로 axis=0, axis=1에 대해 두 어레이를 연결했습니다.

np.array([[1, 2], [3, 4]])과 np.array([[5, 6]])을 두번째 축을 따라 연결하기 위해 transpose를 사용했습니다.



이전글/다음글

이전글 :
다음글 :