Python: Найти степень угла [0: 360] по значениям cos (a) и sin (a) - PullRequest
0 голосов
/ 06 апреля 2020

Я бы хотел найти степень от 0 до 360 моего угла. У меня есть DataFrame с 2 столбцами: cos и sin значения.

df['cos'] = vector values between 0 and 1

df['sin'] = vector values between 0 and 1

Ответы [ 2 ]

3 голосов
/ 06 апреля 2020

Полагаю, вы имеете в виду что-то вроде:

import math

angle = math.degrees(math.acos(df['cos']))

Чтобы действительно остаться в [0, 360], вам нужно будет проверить отрицательное значение cos и адаптировать код следующим образом:

import math
a_acos = math.acos(df['cos'])
if df['sin'] < 0:
   angle = math.degrees(-a_acos) % 360
else: 
   angle = math.degrees(a_acos)
1 голос
/ 06 апреля 2020

Вы можете использовать модуль numpy, который содержит тригонометрические функции c, которые работают с векторами, такие как arcsin и arccos , которые принимают значения sin и cos и возвращают угол. Вы можете использовать функцию градусов для преобразования радиан в градусы.

...