본문 바로가기
함수 설명/기본 및 범용

[NumPy] 배열 차원 추가하며 결합하기: np.stack() 사용 및 설명

by First Adventure 2024. 10. 1.
반응형

소개

  np.stack(arrays, axis)는 여러 배열을 쌓아 새로운 차원을 추가하는 함수로, 동일한 크기의 배열을 지정한 축(axis)에 따라 결합합니다. 이 함수는 데이터를 쌓아 새로운 차원으로 변환할 때 유용하며, 주로 다차원 배열 작업에서 활용됩니다. 예를 들어, 여러 1차원 배열을 쌓아 2차원 배열로 만들거나, 2차원 배열을 쌓아 3차원 배열로 변환할 수 있습니다.

 

기본 사용법

import numpy as np

# 두 개의 1차원 배열 생성
array1 = np.array([1, 2, 3])
array2 = np.array([4, 5, 6])

# 배열을 새로운 차원으로 쌓기 (2x3 배열 생성)
stacked_array = np.stack((array1, array2))

# 두 배열을 열(axis=1) 방향으로 쌓기
stacked_axis1 = np.stack((array1, array2), axis=1)

print("기본 배열 쌓기:\n", stacked_array)
print("열 방향으로 배열 쌓기:\n", stacked_axis1)

상세 설명

  • arrays(array1, array2, ...): 쌓을 배열들의 튜플 또는 리스트. 배열들은 동일한 크기를 가져야 합니다.
    • 예시: np.stack((array1, array2))는 두 개의 1차원 배열을 새로운 축을 추가해 쌓아 2x3 배열을 생성합니다.
  • axis (선택사항): 배열을 쌓을 축을 지정합니다. 기본값은 0으로, 새로운 첫 번째 축을 추가하며 배열을 쌓습니다. axis=1은 두 배열을 열 방향으로 쌓습니다.
    • 예시: np.stack((array1, array2), axis=1)은 두 배열을 열 방향으로 쌓아 3x2 배열을 생성합니다.
  • 활용
    • 다차원 데이터 처리: 여러 개의 배열을 하나로 쌓아 새로운 차원을 추가함으로써 이미지 처리, 신호 처리, 과학적 계산에서 데이터를 효율적으로 다룰 수 있습니다.
    • 배열 결합: 여러 배열을 결합하고 새로운 차원을 추가하여 모델의 입력 데이터를 준비하거나, 배열을 변환할 때 유용합니다.

 

라이센스

  NumPy는 BSD-3-Clause 라이센스를 따릅니다. 자유롭게 사용, 수정, 배포할 수 있으며 상업적 목적으로도 사용할 수 있습니다. 라이센스와 저작권 정보는 NumPy의 공식 GitHub 리포지토리에서 확인할 수 있습니다.

 

관련 내용

  [NumPy] 배열 수평으로 쌓기: np.hstack() 사용 및 설명

  [NumPy] 배열 수직으로 쌓기: np.vstack() 사용 및 설명

  [NumPy] 배열 차원 추가하며 결합하기: np.stack() 사용 및 설명

  [NumPy] 배열 분할하기: np.split() 함수 사용 및 설명

  [NumPy] 배열 이어 붙이기: np.concatenate() 사용 및 설명

  [NumPy] 배열 전치 및 축 변환: np.transpose() 사용 및 설명

  [NumPy] 배열 형태 변경: np.reshape() 사용 및 설명

  [NumPy] 구간을 일정 간격으로 나누기: np.linspace() 사용 및 설명

  [NumPy] 숫자 배열 생성하기: np.arange() 사용 및 설명

  [NumPy] 빈 배열 생성하기: np.empty() 사용 및 설명

  [NumPy] 1로 초기화된 배열 생성: np.ones() 사용 및 설명

  [NumPy] 0으로 초기화된 배열 생성: np.zeros() 사용 및 설명

  [NumPy] 배열 생성: np.array() 사용 및 설명

반응형