soundgen (version 1.5.0)

reportTime: Report time

Description

Provides a nicely formatted "estimated time left" in loops plus a summary upon completion.

Usage

reportTime(i, nIter, time_start, jobs = NULL, reportEvery = 1)

Arguments

i

current iteration

nIter

total number of iterations

time_start

time when the loop started running

jobs

vector of length nIter specifying the relative difficulty of each iteration. If not NULL, estimated time left takes into account whether the jobs ahead will take more or less time than the jobs already completed

reportEvery

report progress every n iterations

Examples

Run this code
# NOT RUN {
time_start = proc.time()
for (i in 1:20) {
  Sys.sleep(i ^ 2 / 10000)
  reportTime(i = i, nIter = 20, time_start = time_start,
  jobs = (1:20) ^ 2, reportEvery = 5)
}
# }
# NOT RUN {
# when analyzing a bunch of audio files, their size is a good estimate
# of how long each will take to process
time_start = proc.time()
filenames = list.files('~/Downloads/temp', pattern = "*.wav|.mp3",
  full.names = TRUE)
filesizes = file.info(filenames)$size
for (i in 1:length(filenames)) {
  # ...do what you have to do with each file...
  reportTime(i = i, nIter = length(filenames),
             time_start = time_start, jobs = filesizes)
}
# }

Run the code above in your browser using DataLab