Python/Numpy

[Python] 파이썬 numpy 삼각함수 계산 - sin, cos, tan

나비🦋 2024. 4. 9. 14:04
반응형

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

지난 포스팅에서는 라디안과 일반 각도를 변환하는 numpy 함수를 알아보았는데요, 이번 포스팅에서는 이어서 삼각함수 관련 메소드를 소개해 보려 합니다.

파이썬 numpy 라이브러리에서는 삼각함수, 역삼각함수, 쌍곡선함수, 역쌍곡선함수를 계산할 수 있는 메소드를 모두 제공합니다. 이번 포스팅에서는 3가지 기본 삼각함수 (sin, cos, tan) 메소드부터 소개해 드리려 해요.

numpy에서 sin, cos, tan 함수 모두 숫자 또는 배열을 입력받을 수 있습니다.

sin은 입력된 숫자 또는 배열 x에 대해 sinx를 출력합니다. 숫자일 때는 float 자료형으로 출력하고, 배열(array)로 입력했을 때는 똑같은 차원의 배열로 각 요소마다 sin 함수를 씌운 결과를 출력합니다.

이러한 기능은 cos, tan 메소드도 마찬가지입니다. 또한, 이 함수들은 입력값을 라디안 각도로 인식하기 때문에, 일반 각도는 반드시 라디안으로 변환하여 입력해야 합니다. (각도 단위 변환 시, deg2rad 메소드를 이용할 수 있습니다.)

아래서부터는 sin, cos, tan 메소드를 예제 코드로 간단히 보여드릴게요!

numpy.sin

import numpy as np

a = np.sin(np.pi/2)
A = np.sin(np.array([np.pi/2, -np.pi/2]))

print(a)
print(A)
1.0
[1.0, -1.0]

np.pi는 무리수 pi를 의미합니다. 그냥 pi라고 하면 안 되고, 반드시 numpy에서 불러와서 사용해야 해요. 파이썬은 pi 무리수를 기본으로 사용할 수 없어요.

보시다시피 숫자로 입력하면 숫자로 나오고, 배열로 입력하면 배열로 나오는 것을 확인할 수 있습니다.




numpy.cos

import numpy as np

a = np.cos(np.pi/3)
A = np.array([np.pi/3, np.pi, np.pi/2])

print(a)
print(np.cos(A))
0.5
[0.5, -1.0, 0.0]

sin 메소드와 마찬가지로, 입력된 형태를 그대로 유지한 채 cos 함수를 적용해 출력해줍니다.

만약 np.pi라고 쓰는 것이 귀찮다면, pi라는 변수에 np.pi를 저장해두는 것이 대안이 될 수 있을 것 같습니다!



numpy.tan

import numpy as np

a = np.tan(np.pi)
A = np.tan(np.array([np.pi, np.pi/4]))

print(a)
print(A)
0.0
[0.0, 1.0]

tan 함수도 동일한 원리로 작동합니다.

참고로, np.array 메소드로 생성한 배열을 따로 변수에 저장한 후 사용할 수도 있지만, 그렇지 않고 바로 다른 함수에 인수로 사용할 수도 있습니다. (대신 한번 계산한 후 저장되지 않고 사라지겠죠!)



네! 여기까지 파이썬 numpy의 기본 삼각함수 3가지 sin, cos, tan 메소드에 대해 설명해 보았습니다.
긴 글 읽어주셔서 감사드리고, 도움이 되셨다면 구독과 좋아요 부탁드려요! ✨✨


반응형