我想我有一个简单而直截了当的问题。
我正在运行一个脚本,并且我想为每个函数计算函数的运行时间。我想有一个功能来计时我的功能。有人可以帮我吗?
我一直在搜索,但一直在寻找时间序列和时间间隔的函数。我不是在搜索。
答案 0 :(得分:3)
与前面提到的评论中的其他人一样,最简单的方法是使用system.time
。这是system.time
manual page
require(stats)
system.time(for(i in 1:100) mad(runif(1000)))
## Not run:
exT <- function(n = 10000) {
# Purpose: Test if system.time works ok; n: loop size
system.time(for(i in 1:n) x <- mean(rt(1000, df = 4)))
}
#-- Try to interrupt one of the following (using Ctrl-C / Escape):
exT() #- about 4 secs on a
2.5GHz Xeon
system.time(exT()) #~ +/- same
在我的机器上,一旦调用函数exT(),这就是我的输出:
user system elapsed
2.916 0.004 2.925
对于函数system.time(exT())
,我得到以下输出:
user system elapsed
3.004 0.016 3.026
这意味着对于第一种情况,经过的时间是2.925秒,第二种情况是3.026。
但是,如果要执行基准测试,则应使用包rbenchmark
(转到here)。这是一个由一个函数组成的库:
该库只包含一个功能,即基准,即 system.time的简单包装。
在我提供的链接上,您可以看到有关如何使用此软件包的更多示例。那里有4个例子,非常好。