如果只有数据,如何计算梯形法则的误差?(Python)



我得到了这个数据数组,我需要计算曲线下的面积,所以我使用Numpy库和Scipy库,其中包含Numpy和中的trapz函数。simps在Scipy中用于数值积分,它在两种情况下都给了我非常好的结果。

现在的问题是,我需要每一个的误差或者至少是梯形法则的误差。问题是,这个公式要求我一个函数,显然我没有。我一直在研究一种方法来获得错误,但总是返回到同一点…

这里是scipy. Integration http://docs.scipy.org/doc/scipy/reference/integrate.html和trapz在Numpy http://docs.scipy.org/doc/numpy/reference/generated/numpy.trapz.html的页面我试着看到很多关于数值积分的代码,更喜欢使用现有的…

有什么想法吗?

虽然cell是正确的,如果您不知道函数,则无法确定集成错误,但您可以做一些事情。

你可以使用曲线拟合来拟合一个函数通过可用的数据点。然后,您可以使用该函数进行误差估计。

如果你期望数据适合某种函数,如正弦,对数或指数,那么最好将其用作曲线拟合的基础。

例如,如果你正在测量一辆移动的汽车上的阻力,众所周知,由于空气阻力,这个大部分与速度的平方成正比。

然而,如果你对适用的函数没有任何了解,那么假设你有N个数据点,有一个N-1次的多项式,通过所有这些数据点完全适合。从数据中确定这样一个多项式就是求解线性方程组。参见多项式插值。你可以用这个多项式作为未知实函数的估计。但是请注意,数据点范围之外,这个多项式可能非常不准确

最新更新