Эквивалентен rowMeans () для min ()

Я видел, как этот вопрос задавали несколько раз в списке рассылки 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 раз больше времени, существует ли способ ускорить это?

18
задан Marek 14 June 2011 в 09:58
поделиться