注意:一个月后没有正确答案,我已重新发布到SO
背景
我有一个模型,, 在哪里
是一个样本矩阵参数和是个模型输出向量。
是计算密集型的,所以我想近似使用多元三次样条通过点,以便我可以评估在更多的点上。
问题
是否有一个 R 函数可以计算 X 和 Y 之间的任意关系?
具体来说,我正在寻找该splinefun
函数的多变量版本,它为单变量情况生成样条函数。
例如,这就是splinefun
单变量案例的工作方式
x <- 1:10
y <- runif(10)
foo <- splinefun(x,y)
foo(1:10) #returns y, as example
all(y == foo(1:10))
## TRUE
我试过的
我已经查看了mda包,似乎以下内容应该有效:
library(mda)
x <- data.frame(a = 1:10, b = 1:10/2, c = 1:10*2)
y <- runif(10)
foo <- mars(x,y)
predict(foo, x) #all the same value
all(y == predict(foo,x))
## FALSE
但我找不到任何方法来实现三次样条mars
自从提供赏金以来更新,我更改了标题 - 如果没有 R 函数,我会按优先顺序接受:输出高斯过程函数的 R 函数,或通过设计点的另一个多元插值函数,最好在 R 中,否则在 Matlab 中。