如何在Python中创建带有结的三次样条?

时间:2019-06-26 16:03:02

标签: python pandas scipy spline cubic-spline

我正在尝试将具有三个结的三次样条拟合到一些数据,以绘制变量的季节性。我的X数据是一年中的天数(基本上是(0,366)范围),而y数据是季节性变量。

如何创建具有三个适合数据的结的三次样条?

我尝试使用:

    spline = CubicSpline(Xdata, ydata, bc_type='periodic')

并且:

    plt.plot(range(0,366), spline(range(0,366)))

但是,使用以下命令绘制这些结果:

{{1}}

得到我的ydata的精确图,并带有所有可能的噪音。我正在尝试创建一条适合数据的平滑线。

我的目标是创建一个季节性模型,该模型在第0天和第365天的y(x)值相同,并且样条曲线在这些值之间弯曲3次。

1 个答案:

答案 0 :(得分:0)

scipy.interpolate中的

make_lsq_spline创建具有固定预定义结的最小二乘样条曲线。