Python 已知积分的曲线拟合

Python 已知积分的曲线拟合,python,scipy,curve-fitting,integral,Python,Scipy,Curve Fitting,Integral,我有一些数据是箱子里未知曲线的积分。出于您的兴趣,数据是海浪能量,而箱子用于指示方向,例如0-15度。如果可能的话,我想在数据上拟合一条曲线来保存容器中的积分。我试着用铅笔在记事本上画草图,似乎这是可能的。是否有人知道Python中有任何曲线拟合工具可以做到这一点,例如在scipy插值子包中 提前谢谢 编辑: 谢谢你的帮助。如果我这样做,看起来我将尝试本文第4节中推荐的方法:。理论上,它基本上是使用矩阵从每个频带之间的已知积分中生成一些“假”数据。绘制时,该数据生成保留积分的插值线图 有点超出了

我有一些数据是箱子里未知曲线的积分。出于您的兴趣,数据是海浪能量,而箱子用于指示方向,例如0-15度。如果可能的话,我想在数据上拟合一条曲线来保存容器中的积分。我试着用铅笔在记事本上画草图,似乎这是可能的。是否有人知道Python中有任何曲线拟合工具可以做到这一点,例如在scipy插值子包中

提前谢谢

编辑:


谢谢你的帮助。如果我这样做,看起来我将尝试本文第4节中推荐的方法:。理论上,它基本上是使用矩阵从每个频带之间的已知积分中生成一些“假”数据。绘制时,该数据生成保留积分的插值线图

有点超出了我的管辖范围,但我可以建议你去看看有没有有用的东西。其他要浏览的包将是和。祝你好运

如果你有一条曲线fx,它近似于另一条曲线gx的积分,即f=intg,x,那么这两条曲线通过,也就是说,你的原始函数是第一条曲线g=df/dx的导数。因此,您可以使用或其中任何一种来近似df/dx,以获得原始曲线的估计值。

一种可能性:计算箱体积np.cumsum的累积和,拟合插值样条曲线,然后取导数以获得曲线

scipy样条曲线有计算导数的方法

唯一的限制是,如果它与您的情况相关,则通过累积和的样条曲线可能不是单调的,并且在某些区间上的导数可能是负的

我想,关于平滑直方图的文献对积分/bin的体积也有类似的限制,但我没有准备好任何参考资料。

1/fit2histogram

你的问题是关于拟合直方图。我刚刚浏览了一些用于多变量模式分析的Python包PyMVPA的文档,并提出了一些直方图拟合函数。这里有一个例子:

然而,我猜可用的分布集仅限于著名的分布

2/积分计算


如前所述,下一个解决方案是近似积分值,并将模型拟合到结果数据集。要么你知道导数的显式表达式,要么你使用计算导数:有限差分法,解析法。

谢谢,但问题是我没有曲线的函数——它是一组数据。我应该说得更清楚。@LaurieW我明白-你不知道g,但你知道g的近似值,这是你的装箱数据。你对积分的估计当然是一个近似值,但这是你能做的最好的了!我想我有一个类似的想法,但我不知道当你重新绘制曲线时,这是否能准确地保留垃圾箱的体积。