Python/numpy

파이썬 numpy.cumsum 함수 활용하기

PySun 2024. 10. 3. 22:16
반응형

numpy.cumsum 함수: 누적 합계 계산하기

파이썬의 NumPy 라이브러리는 대용량 데이터의 계산을 효율적으로 처리할 수 있는 다양한 기능을 제공합니다. 그 중 numpy.cumsum 함수는 배열의 각 요소에 대한 누적 합계를 계산하는 데 사용됩니다. 이 포스팅에서는 numpy.cumsum 함수의 사용법과 예제를 소개합니다.

numpy.cumsum 함수 소개

numpy.cumsum 함수는 주어진 배열의 각 요소에 대해 누적 합계(cumulative sum)를 계산하여 새로운 배열을 반환합니다. 이 함수는 주로 시간에 따라 데이터가 누적되는 경우나 데이터 증가 페이스를 분석할 때 유용합니다.

함수 시그니처

numpy.cumsum(a, axis=None, dtype=None, out=None)

매개변수:

  • a: 누적 합계를 계산할 입력 배열입니다.
  • axis: (선택 사항) 누적 합계를 계산할 축입니다. 기본값은 플랫(flat)이 아닌 배열의 모든 요소를 사용합니다.
  • dtype: (선택 사항) 계산할 데이터 유형입니다. 제공된 배열의 데이터 유형과 다르게 설정할 수 있습니다.
  • out: (선택 사항) 결과를 저장할 배열입니다. 원본 배열과 동일한 차원을 가져야 합니다.

반환 값:

  • 누적 합계를 저장하는 배열을 반환합니다.

사용 예제

기본 예제

다음은 numpy.cumsum 함수를 사용하여 1차원 배열의 누적 합계를 계산하는 기본 예제입니다.

import numpy as np

# 1차원 배열 생성
arr = np.array([1, 2, 3, 4, 5])

# 누적 합계 계산
cum_sum = np.cumsum(arr)

print(f"The cumulative sum of the array is: {cum_sum}")
# 출력:
# The cumulative sum of the array is: [ 1  3  6 10 15]

다차원 배열 예제

2차원 배열의 누적 합계를 계산하고 특정 축(axis)에 대해 계산하는 방법을 보여주는 예제입니다.

import numpy as np

# 2차원 배열 생성
arr2d = np.array([[1, 2, 3], [4, 5, 6]])

# 전체 배열에 대한 누적 합계 계산
cum_sum_all = np.cumsum(arr2d)

# 축 0에 대한 누적 합계 계산
cum_sum_axis0 = np.cumsum(arr2d, axis=0)

# 축 1에 대한 누적 합계 계산
cum_sum_axis1 = np.cumsum(arr2d, axis=1)

print("Cumulative sum of the entire array:", cum_sum_all)
print("Cumulative sum along axis 0:\n", cum_sum_axis0)
print("Cumulative sum along axis 1:\n", cum_sum_axis1)
# 출력:
# Cumulative sum of the entire array: [ 1  3  6 10 15 21]
# Cumulative sum along axis 0:
#  [[ 1  2  3]
#   [ 5  7  9]]
# Cumulative sum along axis 1:
#  [[ 1  3  6]
#   [ 4  9 15]]

결론

numpy.cumsum 함수는 배열의 누적 합계를 계산하는 데 매우 유용하며, 이 기능을 사용하여 데이터 분석 시 증가 추세를 파악하거나 시간 경과에 따른 합계를 쉽게 구할 수 있습니다.

  • 다양한 차원의 배열을 다루며 누적 합계를 효율적으로 계산해 보세요!
  • 지금 바로 numpy.cumsum 함수를 활용하여 데이터를 처리해 보세요!
반응형