R语言程序运行时间及效率
R中的proc.time()函数可以返回当前R已经运行的时间。例如:
proc.time()
user system elapsed
6.56 2.92 1037354.75
- user指R执行用户指令的CPU运行时间
- system是指系统所需的时间
- elapsed是指R打开到现在总共运行的时间
计算程序运行的时间函数是
system.time(expr, gcFirst=TRUE)
expr是需要运行的表达式,gcFirst是逻辑参数。system.time是实际上两次调用了proc.time(),在程序运行前调用一次,运行完成后再调用一次,然后计算两次的时间差,即为程序的运行时间长。
system.time(for (i in 1:1000) mad(runif(1000)))
用户 系统 流逝
0.26 0.00 0.32
ptm <- proc.time()
x <- rnorm(100000)
y <- rnorm(100000)
z <- x + y
proc.time() - ptm
用户 系统 流逝
0.02 0.03 0.11
参考资料:R数据分析:方法与案例详解