私は現在、この実装を使用しています:
getVal = function(i, x, margin) {
rst = ifelse(margin==1, x[i, ], x[, i])
}
つまり、margin の値に応じて、x の i 番目の行または列を返します。
===更新===
ifelse(x,y,z)
最初の引数と同じ長さの値を返すため、ここでのステートメントの使用法が間違っていることに気付きました。私の実装には次のgetVal
ものが必要です。
...
rst = if (margin == 1) x[i, ] else x[, i]
...