Всегда пожалуйста @Kalu
отрим матрицыd
а такжеr
с участиемdim(d) = J x D
а такжеdim(r) = J x R
, Пусть fun (a, b) будет функцией, которая принимает два вектора одинаковой длины и возвращает некоторое число.
Я хочу лечить столбцыd
а такжеr
соответственно как мои единицы интереса и применяютсяouter
им.
Следующий код выполняет это путем создания списков столбцовd
а такжеr
а затем используя обаouter
а такжеsapply
:
d.cols <- split(d, col(d))
r.cols <- split(r, col(r))
outer(d.cols, r.cols,
function(x,y) {
sapply(seq_along(x),
function(i) {
Fun(x[[i]], y[[i]]) })} )
Код делает то, что я хочу, и относительно эффективен, но неуклюж и неясен. Есть ли лучший способ достичь того, что я пытаюсь достичь?