这个问题在这里已有答案:
我需要保存算法的运行时间,之后,我希望得到平均值,但我的指标有问题。有时时差会返回分钟,有时会是秒。我怎么总能获得分钟?
这是一个简短的例子,当我计算平均值时,会出现“错误”。我该怎么办呢?
waitTimes <- c(50,60,70)
saveTimes <- list()
for(i in 1:length(waitTimes)){
start <- Sys.time()
Sys.sleep(waitTimes[i])
end <- Sys.time()
saveTimes[[i]] <- end - start
}
tim <- c()
for(i in 1:length(saveTimes)){
tim <- c(tim,saveTimes[[i]])
}
使用difftime
而不是仅从另一个时间减去一次,这样您就可以将单位指定为分钟:
start <- Sys.time()
end <- Sys.time()
difftime(end, start, units = 'mins')
#Time difference of 0.1102342 mins