[python] NumPy에서 배열의 크기를 조정하거나 변경하는 함수에 대해 알려주세요.

1. reshape 함수

reshape 함수는 배열의 크기를 재조정하는 함수입니다. 이 함수를 사용하여 배열의 차원과 요소 수를 변경할 수 있습니다. 예를 들어, 1차원 배열을 2차원 배열로 변환하거나, 2차원 배열의 행과 열의 수를 변경할 수 있습니다.

다음은 reshape 함수를 사용하여 배열의 크기를 변경하는 예제입니다.

import numpy as np

# 1차원 배열을 2차원 배열로 변환
arr1d = np.array([1, 2, 3, 4, 5, 6])
arr2d = np.reshape(arr1d, (2, 3))
print(arr2d)  # [[1 2 3]
              #  [4 5 6]]

# 2차원 배열의 행과 열의 수 변경
arr2d_resized = np.reshape(arr2d, (3, 2))
print(arr2d_resized)  # [[1 2]
                      #  [3 4]
                      #  [5 6]]

2. resize 함수

resize 함수는 배열의 크기를 변경하는 함수로, reshape 함수와는 달리 원본 배열 자체의 크기를 변경합니다. resize 함수는 크기를 늘리거나 줄일 수 있습니다. 크기를 늘릴 경우에는 원본 배열의 요소를 반복해서 사용하고, 줄일 경우에는 일부 요소를 잘라냅니다.

다음은 resize 함수를 사용하여 배열의 크기를 변경하는 예제입니다.

import numpy as np

# 배열 크기를 늘림
arr = np.array([1, 2, 3])
resized_arr = np.resize(arr, (5,))
print(resized_arr)  # [1 2 3 1 2]

# 배열 크기를 줄임
arr = np.array([[1, 2, 3], [4, 5, 6]])
resized_arr = np.resize(arr, (1, 2))
print(resized_arr)  # [[1 2]]

3. append 함수

append 함수는 배열에 요소를 추가하는 함수입니다. 이 함수를 사용하여 배열의 크기를 변경하거나, 새로운 요소를 추가할 수 있습니다. append 함수는 기존 배열과 새로운 요소를 결합하여 새로운 배열을 생성합니다.

다음은 append 함수를 사용하여 배열의 크기를 변경하는 예제입니다.

import numpy as np

# 배열 크기를 변경하고 요소를 추가
arr = np.array([1, 2, 3])
appended_arr = np.append(arr, [4, 5, 6])
print(appended_arr)  # [1 2 3 4 5 6]

# 다차원 배열의 크기를 변경하고 요소를 추가
arr = np.array([[1, 2], [3, 4]])
appended_arr = np.append(arr, [[5, 6]], axis=0)  # 행 방향으로 추가
print(appended_arr)  # [[1 2]
                     #  [3 4]
                     #  [5 6]]

NumPy의 reshape, resize, append 함수를 사용하면 배열의 크기를 조정하거나 변경할 수 있습니다. 이를 통해 데이터 처리 및 분석 작업에서 배열의 구조를 유지하면서 다양한 연산을 수행할 수 있습니다. 추가로 NumPy의 다른 함수와 기능에 대해서도 공부해보시기 바랍니다.