我需要以相当的间接方式来拟合数据。在拟合中恢复的原始数据是一些线性函数,具有小的振荡和漂移,我想确定。我们称之为f(t)。我们不能直接在实验中记录这个参数,但是只能间接地假设为g(f)= sin(a f(t))。 (真正的传输函数更复杂,但它不应该在这里起作用)Scipy/Python间接样条插值
所以如果f(t)改变方向朝向sin函数的转折点,这是很难识别,我尝试了一种替代方案方法来恢复f(t)而不仅仅是g的逆函数和一些数据继续猜测:我创建了一个模型函数fm(t),它经历了相同的已知传递函数g()和fit g(fm(t) ))到数据。由于数据集非常庞大,因此我会对连续的数据块进行分段处理,以保证整个集合中fm的连续性。
第一个尝试是使用optimize.leastsq使用线性函数,其中误差估计值是从g(fm)导出的。它并不完全令人满意,我认为将数据样条拟合到fspline(t)作为f(t)的模型,保证数据及其导数的连续性会好得多。
问题是,插值软件包的样条拟合直接对数据进行处理,所以我不能用g(fspline)对样条进行包装,并对其进行样条插值。有什么办法可以在scipy中完成?
还有其他想法吗?
我试图二次函数和固定偏移量和斜率这样以匹配数据的前述安装块的那些,因此,只有一个拟合参数,曲率,非常迅速地开始其偏离
由于