오답노트

[Numpy] 배열 병합 본문

Python/Numpy

[Numpy] 배열 병합

권멋져 2022. 7. 14. 18:54

append

append 함수는 두 배열을 병합하여 한 개의 배열로 반환하는 함수다.

병합 방향은 axis 옵션으로 결정할 수 있다.

axis 옵션을 설정하지 않으면 1차원 배열로 병합된 결과를 반환한다.

arr1 = np.arange(1,13).reshape(3,4)
arr2 = np.arange(13,25).reshape(3,4)

print(arr1)
'''

[[ 1  2  3  4]
 [ 5  6  7  8]
 [ 9 10 11 12]]

'''

print(arr2)
'''

[[13 14 15 16]
 [17 18 19 20]
 [21 22 23 24]]

'''

arr3 = np.append(arr1,arr2,axis = 0)
print(arr3)
'''

[[ 1  2  3  4]
 [ 5  6  7  8]
 [ 9 10 11 12]
 [13 14 15 16]
 [17 18 19 20]
 [21 22 23 24]]
 
'''

arr3 = np.append(arr1,arr2,axis = 1)
print(arr3)
'''

[[ 1  2  3  4 13 14 15 16]
 [ 5  6  7  8 17 18 19 20]
 [ 9 10 11 12 21 22 23 24]]

'''

arr3 = np.append(arr1,arr2)
print(arr3)
# [ 1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24]

 

vstack, hstack

vstack 함수는 행을 추가하고, hstack 함수는 열을 추가하는 함수다.

# vstack, hstack
arr1 = np.arange(1,7).reshape(2,3)
arr2 = np.arange(7,13).reshape(2,3)

arr3 = np.vstack((arr1,arr2))
print(arr3)
'''

[[ 1  2  3]
 [ 4  5  6]
 [ 7  8  9]
 [10 11 12]]
 
'''


arr3 = np.hstack((arr1,arr2))
print(arr3)
'''

[[ 1  2  3  7  8  9]
 [ 4  5  6 10 11 12]]
 
'''

 

concatenate

concatenate 함수는 append 함수와 같은 결과지만 용법이 다르다.
 
arr1 = np.arange(1,7).reshape(2,3)
arr2 = np.arange(7,13).reshape(2,3)

arr3 = np.concatenate([arr1,arr2],axis=0)
print(arr3)
'''

[[ 1  2  3]
 [ 4  5  6]
 [ 7  8  9]
 [10 11 12]]

'''


arr3 = np.concatenate([arr1,arr2],axis=1)
print(arr3)
'''

[[ 1  2  3  7  8  9]
 [ 4  5  6 10 11 12]]

'''

'Python > Numpy' 카테고리의 다른 글

[Numpy] 배열 분할  (0) 2022.07.14
[Numpy] 배열의 원소 추가/삭제  (0) 2022.07.14
[Numpy] 배열의 전치행렬  (0) 2022.07.14
[Numpy] 배열의 형태 변경  (0) 2022.07.14
[Numpy] 배열의 정렬  (0) 2022.07.11