Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Python NumPy의 np.sin() 함수로 각도의 삼각함수 사인 값 구하는 방법

Python에서 각도의 삼각함수 사인(trigonometric sine) 값을 구하려면 NumPy의 numpy.sin() 메서드를 사용하면 됩니다. 이 메서드는 첫 번째 매개변수 x의 각 요소에 대한 사인 값을 반환하며, 입력이 스칼라일 경우 결과 역시 스칼라로 반환됩니다.

numpy.sin() 메서드의 매개변수

첫 번째 매개변수 x는 라디안(radian) 단위의 각도입니다. 참고로 2π(2pi)는 360도에 해당합니다.

두 번째 매개변수는 선택 사항으로, 결과를 저장할 ndarray를 지정합니다. 값을 제공하면 입력이 브로드캐스트(broadcast)될 수 있는 형태(shape)여야 하며, 제공하지 않거나 None으로 설정하면 새로 할당된 배열이 반환됩니다. 튜플 형태로 지정할 경우(키워드 인자로만 가능) 길이가 출력 개수와 같아야 합니다.

세 번째 매개변수 역시 선택 사항으로, 입력 전체에 브로드캐스트되는 조건(condition)입니다. 조건이 True인 위치에는 out 배열에 ufunc 연산 결과가 저장되고, 나머지 위치에서는 out 배열이 원래 값을 유지합니다. 단, 기본값 out=None으로 초기화되지 않은 배열을 생성한 경우 조건이 False인 위치의 값은 초기화되지 않은 상태로 남게 되므로 주의해야 합니다.

구현 단계

1단계: 필요한 라이브러리 임포트

import numpy as np

2단계: 삼각함수 사인 값 계산

90도의 사인 값 구하기:

print("\n결과...", np.sin(np.pi/2.))

60도의 사인 값 구하기:

print("\n결과...", np.sin(np.pi/3.))

45도의 사인 값 구하기:

print("\n결과...", np.sin(np.pi/4.))

0도의 사인 값 구하기:

print("\n결과...", np.sin(0))

전체 예제 코드

import numpy as np

# 각도의 삼각함수 사인 값을 구하려면 Python NumPy의 numpy.sin() 메서드를 사용합니다.
# 이 메서드는 첫 번째 매개변수 x의 각 요소에 대한 사인 값을 반환하며,
# 입력이 스칼라이면 결과 역시 스칼라입니다.

print("삼각함수 사인 값 구하기...")

# sin 90도
print("\n결과...", np.sin(np.pi/2.))

# sin 60도
print("\n결과...", np.sin(np.pi/3.))

# sin 45도
print("\n결과...", np.sin(np.pi/4.))

# sin 30도
print("\n결과...", np.sin(np.pi/6.))

# sin 0도
print("\n결과...", np.sin(0))

실행 결과

삼각함수 사인 값 구하기...

결과... 1.0

결과... 0.8660254037844386

결과... 0.7071067811865475

결과... 0.49999999999999994

결과... 0.0

실행 결과를 보면 sin 90°는 1.0, sin 60°는 약 0.866, sin 45°는 약 0.707, sin 30°는 약 0.5, sin 0°는 0.0으로 반환되는 것을 확인할 수 있습니다. 이처럼 numpy.sin()은 라디안 단위의 각도를 받아 정확한 사인 값을 빠르게 계산해 줍니다.