파이썬에서 scimath.power() 메서드를 사용하면 입력 값을 거듭제곱한 결과를 손쉽게 반환할 수 있습니다. 이 메서드는 x의 p제곱, 즉 x**p의 결과를 계산하며, x와 p가 스칼라라면 결과도 스칼라로, 그렇지 않다면 배열 형태로 반환됩니다. 특히 x에 음수 값이 포함된 경우 출력은 자동으로 복소수 영역으로 변환된다는 점이 일반적인 거듭제곱 연산과 다른 특징입니다.
scimath.power()의 매개변수
x는 거듭제곱을 적용할 입력 값입니다.
p는 x를 몇 제곱할지 지정하는 지수입니다. 만약 x가 여러 개의 값을 가진 배열이라면, p는 반드시 스칼라이거나 x와 동일한 개수의 값을 가져야 합니다. 후자의 경우 결과는 x[0]**p[0], x[1]**p[1], ... 형태로 각 요소별로 계산됩니다.
구현 단계
먼저 필요한 라이브러리를 임포트합니다.
import numpy as np
array() 메서드를 사용해 넘파이 배열을 생성합니다.
arr = np.array([2, 4, 8, 16, 32])
생성된 배열을 화면에 출력합니다.
print("Our Array...\n",arr)배열의 차원을 확인합니다.
print("\nDimensions of our Array...\n",arr.ndim)배열 객체의 데이터 타입을 확인합니다.
print("\nDatatype of our Array object...\n",arr.dtype)배열의 형태(shape)를 확인합니다.
print("\nShape of our Array object...\n",arr.shape)scimath.power() 메서드를 사용하여 입력 값의 거듭제곱 결과를 반환합니다.
print("\nResult...\n",np.emath.power(arr, 2))전체 예제 코드
import numpy as np
# array() 메서드로 넘파이 배열 생성
arr = np.array([2, 4, 8, 16, 32])
# 배열 출력
print("Our Array...\n",arr)
# 차원 확인
print("\nDimensions of our Array...\n",arr.ndim)
# 데이터 타입 확인
print("\nDatatype of our Array object...\n",arr.dtype)
# 형태(shape) 확인
print("\nShape of our Array object...\n",arr.shape)
# scimath.power() 메서드로 거듭제곱 결과 반환
print("\nResult...\n",np.emath.power(arr, 2))실행 결과
Our Array... [ 2 4 8 16 32] Dimensions of our Array... 1 Datatype of our Array object... int64 Shape of our Array object... (5,) Result... [ 4 16 64 256 1024]
실행 결과를 보면 각 요소가 2제곱되어 [4, 16, 64, 256, 1024]가 출력된 것을 확인할 수 있습니다. 이처럼 np.emath.power()는 음수 입력에도 안전하게 동작하므로, 과학적 계산에서 음수의 거듭제곱을 다룰 때 유용하게 활용할 수 있습니다.