私は3次元の関数を持っており、3番目の変数に対して事前計算された線形補間の2次元テーブルを作成したいと思います。つまり、最初の2つの変数の値を指定すると、3番目の変数の線形補間をルックアップします。どのようにしてこれらの関数を保持し、索引付けできる多次元(この場合は2)のデータ構造を構築できますか。Rで多次元関数の配列を作る方法はありますか?
例えば、Idはそのような構造と対話したい:
a_func <-function (a, b, c) {...}
for(x in 1:n) {
for(y in 1:m) {
some_structure[x][y] <- approxfun(seq(0,q,by=0.01), sapply(seq(0,q,by=0.01), FUN=a_func, a=y, b=x))
}
}
、
some_structure[_x][_y](z) #and then index it like this
おそらくもっと具体的な例を挙げたいでしょう。 – Frank
@フランク、どうですか? –
Rの遅延評価のため、これは理想的なアプローチではないかもしれません。つまり、関数内で 'n'または' m'を使用した場合、関数は、割り当てられたときの値に関係なく、呼び出されたときに**現在の値**またはn/mを使用します。 –