У меня есть матрица и функция, которая берет вектор и возвращает матрицу. Я хочу применить функцию ко всем строкам матрицы и объединить все результаты. Например
mat <- matrix(1:6, ncol=2)
f <- function (x) cbind(1:sum(x), sum(x):1)
do.call(rbind, apply(mat, 1, f))
Это отлично работает, поскольку возвращаемые матрицы имеют разные числа строк, поэтому apply возвращает список. Но если они имеют одинаковое количество строк, это больше не работает:
mat <- f(3)
apply(mat, 1, f)
apply возвращает матрицу, из которой я не могу получить результат, который я хочу. Можно ли принудительно применить заявку для возврата списка или есть другое решение?