我希望从一组数据点生成一个最适合这些点的三次三次样条函数。
也就是说,寻求获得最适合数据的单三阶多项式函数-与分段多项式相反。 (最终目的是找到该函数的二阶导数的最大值)
我尝试过scipy.interpolate.CubicSpline,但似乎只允许生成分段三次样条。
是否存在另一个函数或另一个库,该函数或库将生成最适合给定数据点的单个三次样条?
背景:数据点来自称重传感器(重量传感器),代表两个相互接触的物理物体。目的是使立方脊椎适合数据平滑,然后计算二阶导数的最大值-为了找到它们接触的确切时刻-尽可能使用给定传感器。 (如果在此方法中观察到任何缺陷,欢迎观察)
答案 0 :(得分:2)
如果您确实需要单个抛物线,则可以使用numpy.polyfit
。
如果您需要的是连续的二阶导数,那么您的确是在三次样条曲线之后,它不过是连续间隔(因此是分段的)上三次立方的集合,它们匹配到第二阶导数。
根据是要插值(精确匹配数据点)还是拟合(即数据包含信号和一些噪声,并且要提取前者),是使用CubicSpline还是{{1} }。
答案 1 :(得分:0)
您可以使用多项式回归进行此操作,进行多项式回归的核心概念是
我发现这个博客解释了多项式回归
https://towardsdatascience.com/machine-learning-polynomial-regression-with-python-5328e4e8a386