Quantcast
Channel: How to add progress bar inside dplyr chain in R - Stack Overflow
Viewing all articles
Browse latest Browse all 3

Answer by Weihuang Wong for How to add progress bar inside dplyr chain in R

$
0
0

Rather than using rowwise(), perhaps try pairing the map* functions from purrr with progress_estimated(). This answer follows the approach from https://rud.is/b/2017/03/27/all-in-on-r%E2%81%B4-progress-bars-on-first-post/.

First, wrap your function in another function that updates the progress bar:

SunriseSet <- function(lat, long, date, timezone, num.days, .pb = NULL) {  if (.pb$i < .pb$n) .pb$tick()$print()  sunrise.set(lat, long, date, timezone, num.days)}

Then, iterate through your inputs with pmap, or pmap_df (to bind the outputs into a dataframe):

library(purrr)pb <- progress_estimated(nrow(test), 0)test2 <- test %>%   mutate(    sunrise = pmap_df(      list(        lat = latitude,         long = longitude,        date = as.character(cdatetime)      ),      SunriseSet,      timezone = "CST6CDT", num.days = 1, .pb = pb    )$sunrise  )

Viewing all articles
Browse latest Browse all 3

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>