在基准测试期间多次运行 R 中的函数
我正在尝试使用 system.time() 测量 R 中函数的计算时间。 我想运行该函数数百次以获得平均值,但我不想 复制并粘贴多次。有更简单的方法吗?
I am trying to measure the computation time of a function in R using system.time()
.
I want to run the function a few hundred times to get an average but I don't want
to copy and paste that many times. Is there an easier way to do that?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
microbenchmark 包采用
,times=
选项,并且具有更准确的额外好处。并使用 ggplot2 尚未发布的 autoplot() 方法:
The microbenchmark package takes a
,times=
option and has the added bonus of being a bit more accurate.And using the not-yet-released autoplot() method for ggplot2:
或者:(嘿,我并不为拥有与德克相同的答案而感到羞耻。)
Or: (hey, I'm not ashamed to have the same answer as Dirk.)
您想要使用 rbenchmark 包及其函数
benchmark()
,它的作用差不多一切都为了你。这是其帮助页面中的第一个示例:
对于真正的表达式级基准测试,还有 microbenchmark 包。
You want to use the rbenchmark package and its function
benchmark()
which does just about everything for you.Here is the first example from its help page:
For truly expression-level benchmarking, there is also the microbenchmark package.