Мой вопрос - это что-то похожее на вопрос here. Простым термином я имею данные углового ряда, ограниченного в [0, 360]. Мне нужно интерполировать значения между измерениями. В настоящее время я использую scipy.interpolate.interp1d. Для того, чтобы сделать мой вопрос еще яснее здесь пример сценария,Ограниченная круговая интерполяция в python
import numpy as np
from scipy import interpolate
data = np.array([[0, 2, 4], [1, 359, 1]])
f = interpolate.interp1d(data[0, :], data[1, :], kind='linear', bounds_error=False, fill_value=None)
f([1, 3])
это приведет к [180, 180.]. Однако между временем 2 и временем 4 угол изменился с 359 на 1, то есть только изменение на 2 градуса, а интерполированное значение на 3 должно было равняться 0. Углы меняются в направлении CCW во времени.
Наконец, мой вопрос заключается в следующем,
Есть ли стандартный модуль, который можно использовать для достижения этой цели?
Просто потому, что я стараюсь избегать использования индивидуального метода в максимально возможной степени!
Под 'standard' вы имеете в виду часть дистрибутива Python или Numpy, SciPy? Вы проводили какое-либо время, просматривая документацию? – wwii
Да, вы правы, я имею в виду что-нибудь в Numpy, SciPy (я не хочу иметь что-то, что можно использовать только для решения этой конкретной проблемы). Я попытался просмотреть документацию, но, как вы можете сказать, мои знания об интерполяции не более чем линейные – hashmuke
Какое * направление * - угол меняется - * по часовой стрелке * или * против часовой стрелки *? Как это определяется? – wwii