在我的R程序中,我有一个主循环,可能需要相当长的时间才能完成。因此,我想创建一个警告对话框,提供比我现在更准确的估计。目前在循环中调用
if (loopIteration == 1) {
sampleTime1 <- sys.time();
}
if (loopIteration == 2) {
sampleTime2 <- sys.time();
timeEstimate <- loopLength*difftime(sampleTime2, sampleTime1);
print(timeEstimate);
}
不幸的是,这个估计值不准确,大约75%。我怎样才能使这更准确?
答案 0 :(得分:1)
您似乎正在使用其他未命名包中的函数。基函数中的函数名称为system.time
,它报告的第三个元素是表达式执行所用的时间:
> system.time({for(i in 1:1000000) {NULL} })[3]
elapsed
0.2