如何在R中计算我的脚本?

时间:2014-08-06 09:53:38

标签: r timing

我想我有一个简单而直截了当的问题。

我正在运行一个脚本,并且我想为每个函数计算函数的运行时间。我想有一个功能来计时我的功能。有人可以帮我吗?

我一直在搜索,但一直在寻找时间序列和时间间隔的函数。我不是在搜索。

1 个答案:

答案 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个例子,非常好。