Я видел, как этот вопрос задавали несколько раз в списке рассылки R, но все равно не смог найти удовлетворительного ответа.
Предположим, я матрица m
m <- matrix(rnorm(10000000), ncol=10)
. Я могу получить среднее значение каждой строки следующим образом:
system.time(rowMeans(m))
user system elapsed
0.100 0.000 0.097
Но получение минимального значения каждой строки с помощью
system.time(apply(m,1,min))
user system elapsed
16.157 0.400 17.029
занимает более чем в 100 раз больше времени, существует ли способ ускорить это?