concatenate 메소드, 배열 합치기
- concatenate 메소드는 선택한 축 (axis)의 방향으로 배열을 연결해주는 메소드
1) 1차원 배열
In [2]:
import numpy as np
a1 = np.array([1, 2, 3])
b1 = np.array([4, 5, 6])
print(a1)
print(b1)
[1 2 3]
[4 5 6]
In [4]:
#1차원 배열에 concanate 적용하기
np.concatenate((a1, b1), axis=0)
Out[4]:
array([1, 2, 3, 4, 5, 6])
- 1차원에서 axis=0은 행방향이나 열방향이라는 개념이 없음
- axis=1로 하면 에러 발생 >> 방향이 axis=0 하나 뿐이기 때문(직선이라고 생각)
2) 2차원 배열
In [5]:
a2 = np.array([ [1, 2, 3], [10, 20, 30] ])
b2 = np.array([ [4, 5, 6], [40, 50, 60] ])
print(a2)
print(b2)
[[ 1 2 3]
[10 20 30]]
[[ 4 5 6]
[40 50 60]]
In [6]:
#2차원 배열에서 axis=0은 행방향(위>아래)을 의미
np.concatenate((a2, b2), axis=0)
Out[6]:
array([[ 1, 2, 3],
[10, 20, 30],
[ 4, 5, 6],
[40, 50, 60]])
In [7]:
#열방향(왼>오)
np.concatenate((a2, b2), axis=1)
Out[7]:
array([[ 1, 2, 3, 4, 5, 6],
[10, 20, 30, 40, 50, 60]])
3) 3차원 배열
In [10]:
a3 = np.array([ [[1, 2, 3, 4],[10, 20, 30, 40]], [[100, 200, 300, 400], [1000, 2000, 3000, 4000]] ])
b3 = np.array([ [[5, 6, 7, 8],[50, 60, 70, 80]], [[500, 600, 700, 800], [5000, 6000, 7000, 8000]] ])
print(a3)
print(b3)
[[[ 1 2 3 4]
[ 10 20 30 40]]
[[ 100 200 300 400]
[1000 2000 3000 4000]]]
[[[ 5 6 7 8]
[ 50 60 70 80]]
[[ 500 600 700 800]
[5000 6000 7000 8000]]]
In [11]:
#3차원 배열에서 asix=0은 높이 방향을 의미
np.concatenate((a3, b3), axis=0)
Out[11]:
array([[[ 1, 2, 3, 4],
[ 10, 20, 30, 40]],
[[ 100, 200, 300, 400],
[1000, 2000, 3000, 4000]],
[[ 5, 6, 7, 8],
[ 50, 60, 70, 80]],
[[ 500, 600, 700, 800],
[5000, 6000, 7000, 8000]]])
In [12]:
#axis=1은 행방향 의미
np.concatenate((a3, b3), axis=1)
Out[12]:
array([[[ 1, 2, 3, 4],
[ 10, 20, 30, 40],
[ 5, 6, 7, 8],
[ 50, 60, 70, 80]],
[[ 100, 200, 300, 400],
[1000, 2000, 3000, 4000],
[ 500, 600, 700, 800],
[5000, 6000, 7000, 8000]]])
In [13]:
#axis=2은 열방향 의미
np.concatenate((a3, b3), axis=2)
Out[13]:
array([[[ 1, 2, 3, 4, 5, 6, 7, 8],
[ 10, 20, 30, 40, 50, 60, 70, 80]],
[[ 100, 200, 300, 400, 500, 600, 700, 800],
[1000, 2000, 3000, 4000, 5000, 6000, 7000, 8000]]])
'Python > Numpy' 카테고리의 다른 글
넘파이 numpy (4) - random 모듈(rand, randint, randn, choice, seed, etc) (0) | 2023.05.08 |
---|---|
넘파이 numpy (3) - 행렬 정렬, 내적, 전치 (0) | 2023.04.21 |
넘파이 numpy (2) - arange, reshape, indexing (0) | 2023.04.21 |
넘파이 numpy (1) - ndarray, dtype, astype (0) | 2023.04.21 |