使用Sys.time在R中获得不同的执行时间

时间:2018-07-19 05:14:50

标签: r time execution-time

我正在通过在代码的开头和结尾编写Sys.time()并计算差值来测量用R编写的程序的执行时间。我得到的结果在不同的时间实例上有所变化。

例如 adjacent1 。矩阵

0 1 1 1 1 1.
  1 0 1 1 1 1.
  1 1 0 1 1 1.
  1 1 1 0 1 1.
  1 1 1 1 0 1.
  1 1 1 1 1 00。

R代码是

initial_time = Sys.time()。
相邻1%%adjacent1%%adjacent1。
final_time = Sys.time()。
时间= final_time-initial_time。
打印(时间)

当我多次运行代码时,每次输出都不同。

时差0.002844095秒。
时差为0.003111839秒。
时差为0.002691031秒。
时差为0.003143072秒。

这是一个简单的示例。对于更复杂的R代码,执行时间会有明显的不同。

为什么会这样?

1 个答案:

答案 0 :(得分:0)

由于您没有提供示例,所以我创建了一些虚拟数据以供使用:

sleep_for_5_secs <- function() { Sys.sleep(5) }

start_time <- Sys.time()
sleep_for_5_secs()
end_time <- Sys.time()

start_time
[1] "2018-07-19 14:21:20 MYT"
end_time
[1] "2018-07-19 14:21:25 MYT"

上面的代码所做的是测量系统时间,等待5秒钟,然后再次测量系统时间。如您所见,Sys.time函数起作用。