Мне было интересно, если бы был метод, который бы соответствовал сплайну непосредственно функции вместо точек. В настоящее время я вручную создаю точки из функции. Ниже приведен код, который я использую (упрощенная версия).Scipy: подгонка сплайна к пользовательской функции вместо точек
def get_fit_function(self, function, test_range, k=3, **fArgs):
x = np.array(test_range)
y = np.array([function(p, **fArgs)
for p in x]) # my function
u = UnivariateSpline(x, y, k=k)
print('avgError', u.get_residual()**0.5/len(x_values))
return u
Я ничего не смог найти в документации по scipy. Кто-нибудь знает, существует ли такой метод? Благодарю.
Спасибо за ответ. Дело в том, что я пытаюсь ускорить мой код. Эта функция возникает из неявного уравнения, поэтому вычисление с сплайном в 500-1000 раз быстрее ('% timeit') с минимальной ошибкой. – Mstaino