【发布时间】:2017-01-09 08:00:59
【问题描述】:
在 R 中测量函数执行时间很简单,但会污染代码。
t0 <- Sys.time()
my_function()
t1 <- Sys.time()
t1-t0
R中是否有一些包或设置使其记录执行时间(持续时间)和完成时间并在函数输出后将其打印到屏幕上?
在 stata 中,这可以通过设置来完成:
set rmsg on
之后,如果你运行一段代码,使用以下 4 个命令:
clear
set obs 3
gen x=1
输出窗口将显示:
. clear
r; t=0.00 9:10:28
. set obs 3
number of observations (_N) was 0, now 3
r; t=0.00 9:10:28
. gen x=1
r; t=0.00 9:10:28
.
end of do-file
r; t=0.00 9:10:28
上面我们有执行和完成时间:
- 每个命令命令。这遵循命令自己的输出(请记住
clear和gen没有屏幕输出)。 - hole 命令方块。这通过添加
end of do-file和之后的时间信息来表示。
我发现这在处理大型数据集时非常有用。
有没有办法在 R 中做到这一点?
如果没有,创建一个包来实现这个功能会不会太复杂?
【问题讨论】:
-
你在使用 RStudio 吗?然后,看看preview version,它包括一个简单的分析选项 - 我认为 - 可以满足您的需求。