我当时使用scipy.signal.cspline1d()
来平滑我拥有的时间序列。一切正常,但是现在我要描述该过程,我意识到我不知道参数lamb
实际代表什么。当然,我可以只报告使用的值,但我认为用更易于掌握的平滑属性(例如低通滤波中的截止频率,或平均在一起的点数,等等。
在spline interpolation的文档页面上,我发现有一个平滑参数在某种程度上与拟合的数据点相关联,但无法真正从中得出如何将其应用于我的数据的信息。
因此,lamb
与其他度量之间是否存在直接关系?
谢谢!
答案 0 :(得分:1)
如果有帮助,
cspline1d()
的实现–如果lamb
不为0,_cubic_smooth_coeff(signal, lamb)
,而后者依次_coeff_smooth(lam)
来获取用于处理给定信号的rho和omega值。实现这一点的18-year-old commit并没有给我们带来太多启示,但是函数名_cubic_smooth_coeff
会有所帮助。
有this Wikipedia article的lambda定义很有希望:
λ> = 0是一个平滑参数,它控制对数据的保真度和函数估计的粗糙度之间的权衡。这通常是通过广义交叉验证或受限边际似然(REML)来估计的,而后者利用样条平滑和贝叶斯估计之间的联系