Progress updates for 'plyr' functions
Henrik Bengtsson
Source:vignettes/progressify-51-plyr.md
progressify-51-plyr.RmdThe progressify package allows you to easily add
progress reporting to sequential and parallel map-reduce code by piping
to the progressify() function. Easy!
TL;DR
library(progressify)
handlers(global = TRUE)
library(plyr)
slow_fcn <- function(x) {
Sys.sleep(0.1) # emulate work
x^2
}
xs <- 1:100
ys <- llply(xs, slow_fcn) |> progressify()Introduction
This vignette demonstrates how to use this approach to add progress
reporting to plyr
functions such as llply(), maply(), and
ddply().
The plyr llply() function is commonly
used to apply a function to the elements of a list and return a list.
For example,
Here llply() provides no feedback on how far it has
progressed, but we can easily add progress reporting by using:
library(plyr)
library(progressify)
handlers(global = TRUE)
xs <- 1:100
ys <- llply(xs, slow_fcn) |> progressify()Using the default progress handler, the progress reporting will appear as:
|===== | 20%