본문 바로가기
파이썬/파이썬기본문법

파이썬 numpy ufunc 배열의 곱(product)

by flycoding 2024. 1. 8.
반응형

파이썬 numpy ufunc product - prod()

배열에서 요소의 곱을 찾으려면 prod() 함수를 사용한다.

이 배열의 요소의 곱 찾기:

import numpy as np

arr = np.array([1, 2, 3, 4])

print('arr : ', arr)

x = np.prod(arr)

print('x = np.prod(arr) : ', x)

prod(arr) 함수는 배열의 각 요소를 곱하는 것으로 1*2*3*4의 결과로 24가 화면에 표시된다.

위의 코드를 실행하면 아래 그림과 같다.

파이썬 numpy ufunc prod() 함수 활용 예제

 

두 배열의 요소의 곱 찾기:

import numpy as np

arr1 = np.array([1, 2, 3, 4])
arr2 = np.array([5, 6, 7, 8])

print('arr1 : ', arr1)
print('arr2 : ', arr2)

x = np.prod([arr1, arr2])

print('x = np.prod([arr1, arr2]) : ', x)

np.prod([arr1, arr2])는 1*2*3*4*5*6*7*8의 결과로 40320이 화면에 출력이 된다.

위의 코드를 실행하면 아래 그림과 같다.

파이썬 numpy ufunc prod() 함수 활용 예제

 

파이썬 numpy ufunc 축에 대한 곱 - prod()

축=1을 지정하면 NumPy가 각 배열의 제품을 반환한다.

1번째 축에 걸쳐 다음 배열로 합산을 수행한다:

import numpy as np

arr1 = np.array([1, 2, 3, 4])
arr2 = np.array([5, 6, 7, 8])

print('arr1 : ', arr1)
print('arr2 : ', arr2)

x = np.prod([arr1, arr2], axis=1)

print('x = np.prod([arr1, arr2], axis=1) : ', x)

np.prod([arr1, arr2], axis=1)에서 1*2*3*4=24, 5*6*7*8=1600의 결과를 배열로 반환한다.

위의 코드를 실행하면 아래 그림과 같다.

파이썬 numpy ufunc prod() axis 함수 활용 예제

 

파이썬 numpy ufunc 누적 곱 - cumprod()

누적 상품이란 상품을 부분적으로 가져가는 것을 의미한다.

예를 들어, [1, 2, 3, 4]의 부분곱은 [1, 1*2, 1*2*3, 1*2*3*4] = [1, 2, 6, 24]

cumprod() 함수를 사용한 부분 합.


다음 배열에 대한 모든 요소의 누적 곱을 구한다:

import numpy as np

arr = np.array([1, 2, 3, 4])

print('arr : ', arr)

x = np.cumprod(arr)

print('x = np.cumprod(arr) : ', x)

위의 코드를 실행하면 아래 그림과 같다.

파이썬 numpy ufunc cumprod() 함수 활용 예제

 

이번 글에서는 파이썬 numpy ufunc 곱(product)에 대해서 살펴보았다.

파이썬 numpy ufunc 배열 내의 요소를 곱하는 prod()함수, 2개의 배열의 항목을 곱하는 예 등을 살펴보았다.

꼭 손으로 눈으로 머리로 익히며 실습하기를 바란다.

모두 화이팅입니다.!!!

 

출처 : 이 글의 출처는 w3schools사이트를 참고하였으며 필자가 추가하여 정리한 글입니다.

반응형

댓글