[파이썬][Scipy] 배열 합치기 예제
배열을 합치는 작업은 데이터 처리에서 매우 일반적입니다. NumPy와 Scipy에서 배열을 합치기 위한 몇 가지 예제를 제공합니다.
-
배열 연결 (Concatenation):
numpy.concatenate
함수를 사용하여 배열을 연결할 수 있습니다. 여러 배열을 연결하려면 해당 배열들을 튜플로 전달합니다.
import numpy as np
# 두 배열 생성
arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])
# 배열 연결 (수직으로 연결)
combined_arr = np.concatenate((arr1, arr2))
print("첫 번째 배열:")
print(arr1)
print("두 번째 배열:")
print(arr2)
print("연결된 배열:")
print(combined_arr)
-
배열 스택 (Stacking):
numpy.stack
함수를 사용하여 배열을 쌓아 새로운 배열을 생성할 수 있습니다. 축 (axis)을 지정하여 수직 및 수평 스택을 수행할 수 있습니다.
import numpy as np
# 두 배열 생성
arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])
# 배열 수직 스택
vertical_stack = np.vstack((arr1, arr2))
# 배열 수평 스택
horizontal_stack = np.hstack((arr1, arr2))
print("첫 번째 배열:")
print(arr1)
print("두 번째 배열:")
print(arr2)
print("수직 스택:")
print(vertical_stack)
print("수평 스택:")
print(horizontal_stack)
-
배열 분할 (Splitting):
배열을 분할하여 여러 하위 배열로 나눌 수 있습니다. 이것은 합치기의 반대 작업입니다.
import numpy as np
# 배열 생성
arr = np.array([1, 2, 3, 4, 5, 6])
# 배열을 3개의 하위 배열로 분할
split_arr = np.split(arr, 3)
print("원래 배열:")
print(arr)
print("분할된 배열:")
for sub_arr in split_arr:
print(sub_arr)
-
배열 쌓기 (Tile):
numpy.tile
함수를 사용하여 배열을 반복하여 쌓을 수 있습니다.
import numpy as np
# 배열 생성
arr = np.array([1, 2, 3])
# 배열을 3번 반복하여 쌓기
stacked_arr = np.tile(arr, 3)
print("원래 배열:")
print(arr)
print("반복하여 쌓인 배열:")
print(stacked_arr)
이러한 배열 합치기 예제를 사용하여 데이터를 원하는 방식으로 조합하고 구조화할 수 있습니다. NumPy의 배열 조작 함수와 메서드는 데이터 처리 작업을 간편하게 만듭니다.