Comments 1
Для сравнения скорости исполнения операций в R
стандартом давно стал пакет microbenchmark
. Суть в том, что время исполнения никогда не бывает строго одинаковым для итераций одной и той же команды. Поэтому для корректного сравнения надо запускать команду много раз подряд (стандарное число итераций — 100) и потом сравнивать распределния потраченного времени. Чаще всего сравнивают медианы. Пример:
library(tidyverse)
library(microbenchmark)
microbenchmark(
apply(mtcars, 2, mean),
mtcars %>% summarise_each(funs(mean)),
summarise_each(mtcars, funs(mean))
)
Unit: microseconds
expr min lq mean median uq max neval
apply(mtcars, 2, mean) 151.095 175.042 193.2387 184.7345 213.8135 322.714 100
mtcars %>% summarise_each(funs(mean)) 1671.156 1724.323 1825.2407 1785.4745 1834.7935 3687.832 100
summarise_each(mtcars, funs(mean)) 1578.504 1634.238 1742.8804 1678.9960 1731.0240 3583.777 100
Sign up to leave a comment.
data.table: выжимаем максимум скорости при работе с данными в языке R