注: 1か月後に正しい答えが得られないため、SOに再投稿しました
バックグラウンド
モデルがあり、Y = f (X)
n × m m Y n × 1はパラメーターからのサンプルの行列で、はモデル出力のベクトルです。
f (X 、Y )Yは計算量が多いためポイントを通る多変量3次スプラインを使用してを近似し、より多くのポイントでを評価できるようにします。
質問
XとYの間の任意の関係を計算するR関数はありますか?
具体的には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
しかし、3次スプラインを実装する方法を見つけることができませんでした mars
バウンティを提供してから更新し、タイトルを変更しました-R関数がない場合、優先順に受け入れます:ガウスプロセス関数を出力するR関数、またはデザインポイントを通過する別の多変量補間関数、できればR、それ以外はMatlab。