Существует ли в R стандартизированный способ измерения времени выполнения функции?
Очевидно, я могу взять system.timeдо и после выполнения, а затем принять разницу, но я хотел бы знать, есть ли какой-то стандартизированный способ или функция (хотел бы не изобретать колесо).
Кажется, я помню, что когда-то использовал что-то вроде ниже:
somesysfunction("myfunction(with,arguments)")
> Start time : 2001-01-01 00:00:00 # output of somesysfunction
> "Result" "of" "myfunction" # output of myfunction
> End time : 2001-01-01 00:00:10 # output of somesysfunction
> Total Execution time : 10 seconds # output of somesysfunction
Rprofэто хорошо. Он обеспечивает профиль всех процессов в блоке кода / функции.
require(microbenchmark)теперь (с тех пор, как пару лет назад) стали стандартом для сообщества. times <- microbenchmark( lm(y~x), glm(y~x), times=1e3); example(microbenchmark), Это делает статистическое сравнение lmпротив glmболее 1000 попыток, а не system.timeиспытывать только один раз.
proc.timeв виду, потому чтоsystem.timeэто то, что вам нужно.