Delphi上的r-数值线性插值



我需要在Delphi中做一个简单的数字线性插值,本来想实现一个函数,但后来想得更好,我认为应该已经有了一些库。我在谷歌上一无所获。

我的问题很简单,我有一个包含X和Y数据的数据集,以及其他新的数据集X数据(Xb),这将是找到插值的新Y数据(Yin)的基础。

例如,在R中,有一个函数approx可以很容易地实现这一点。此功能还允许Xb长度为任何大小。

Yin <- approx (X, Y, Xb, method = "linear")$y

Delphi中有一些统计库可以做到这一点吗?还是继续编写我的函数(基于approx)?

1D数据的线性插值非常简单:

  • 在X数组中找到这样的索引,即X[i] <= Xb < X[i+1]

(随机访问情况下的二进制搜索,逐步Xb变化情况下的线性搜索)

  • 计算

    Yb = Y[i] + (Y[i+1] - Y[i]) * (Xb - X[i]) / (X[i+1] - X[i])
    

相关内容

  • 没有找到相关文章

最新更新