Python/Numpy

[Python] 파이썬 numpy 자주 쓰는 상수 정리 - 원주율, 자연상수, 무한대, Null

나비🦋 2024. 5. 11. 20:09
반응형

안녕하세요! 나비입니다 🦋

오랜만에 파이썬 numpy 카테고리에 글을 쓰고 있는데요, 이번 포스팅에서는 numpy가 지원하는 상수(constant number) 몇 가지를 소개드리려고 합니다.

자주 쓰는 4개의 상수(고정값)를 아래서 순서대로 설명하겠습니다.


목차
원주율
자연상수
무한대
비어있음


원주율


원주율, 즉 pi는 numpy 라이브러리를 통해 np.pi 로 사용할 수 있습니다.

numpy를 불러오지 않은 채로 그냥 pi라고 하면, 파이썬이 이를 지원하지 않기 때문에 에러가 뜹니다.

따라서, 반드시 numpy를 import한 후에 “np.pi”라고 하셔야 합니다.

아래 예제에서 numpy를 이용하여 sin, cos, tan 함수에 pi를 한번 넣어볼게요.

import numpy as np

a = np.sin(np.pi)
b = np.cos(np.pi)
c = np.tan(np.pi)

print(a)
print(b)
print(c)
0.0
-1.0
0.0


위 코드와 같이, 우리가 생각하는 방향으로, 제대로 계산되는 것을 확인할 수 있습니다.

pi를 자주 사용하는 경우에는 따로 변수로 저장해놓고 사용하는 것이 대안이 될 수 있습니다.
np.pi도 다른 숫자와의 사칙연산이 가능하고, 거듭제곱, 제곱근 등등의 연산을 할 수 있습니다.



자연상수


자연상수, 즉 e는 np.e 로 사용하시면 됩니다.

원주율 pi와 마찬가지로 파이썬에서 자체적으로 지원하는 함수는 아니기 때문에, numpy 라이브러리 내에서 꺼내쓰셔야 합니다.

numpy의 log함수에 np.e를 한번 넣어보도록 하겠습니다.

import numpy as np

a = np.log(np.e)
b = np.log((np.e)**2)
c = np.log(1/(np.e))

print(a)
print(b)
print(c)
1.0
2.0
-1.0


참고로, np.log는 자연로그 함수입니다. e의 거듭제곱을 입력해 주면, 정상적으로 결과가 나옴을 보실 수 있습니다.
np.e도 마찬가지로 자유로운 연산 가능합니다.


무한대


무한대는 np.inf 입니다. 마이너스 무한대는 -np.inf이고요. 출력값에서도 inf, -inf로 표기합니다.
무한대는 상수라고 하기에는 특수한 부분이 많아서, pi나 e처럼 연산을 하기는 힘듭니다.

import numpy as np

a = np.log(0)
b = np.exp(np.inf)

print(a)
print(b)
-inf
inf


함수의 입력값으로도 inf가 쓰이고, 출력 결과에서도 무한대를 inf이라고 합니다.
np.exp는 자연상수 e를 밑으로 하는 지수함수이고, np.log는 자연로그 함수입니다.


비어있음(null)


마지막으로 null 값입니다.

사실 null은 수학 연산과는 관련이 별로 없고, 대신 데이터베이스(DB)에서 자주 볼 수 있는 값입니다.

numpy도 혼자 단독으로 쓰는 경우는 많이 없고, 대부분 matplotlib이나 pandas와 함께 사용하는 경우가 많아서, null 값을 따로 지원해주는 것 같습니다.

null 값은 np.nan 이라고 합니다. Null 값이 출력되어야 하는 상황에서도 nan이라고 표기합니다.

코드는 생략하겠습니다. 나중에 pandas 포스팅할 때 다시 언급될 부분이어서 여기서는 생략합니다.


반응형