library(vroom) library(dplyr) library(fs) library(purrr) library(tidyr) summarise_dir <- function(dir, desc) { out_file <- path(path_dir(dir), path_ext_set(path_file(dir), "tsv")) col_types <- cols( exprs = col_character(), process = col_character(), real = col_character(), size = col_double(), rows = col_double(), cols = col_double() ) dir_ls(dir, glob = "*tsv") %>% discard(~endsWith(.x, "input.tsv")) %>% vroom(id = "path", col_types = col_types) %>% mutate(path = path_ext_remove(path_file(path))) %>% group_by(path) %>% mutate(op = desc) %>% separate(path, c("reading_package", "manip_package"), "-") %>% pivot_longer(., cols = c(process, real), names_to = "type", values_to = "time") %>% select(reading_package, manip_package, op, type, time, size, max_memory, rows, cols) %>% vroom_write(out_file, delim = "\t") } summarise_dir(here::here("inst/bench/all_numeric-long"), c("setup", "read", "print", "head", "tail", "sample", "filter", "aggregate")) summarise_dir(here::here("inst/bench/all_numeric-wide"), c("setup", "read", "print", "head", "tail", "sample", "filter", "aggregate")) summarise_dir(here::here("inst/bench/all_character-long"), c("setup", "read", "print", "head", "tail", "sample", "filter", "aggregate")) summarise_dir(here::here("inst/bench/all_character-wide"), c("setup", "read", "print", "head", "tail", "sample", "filter", "aggregate")) summarise_dir(here::here("inst/bench/taxi"), c("setup", "read", "print", "head", "tail", "sample", "filter", "aggregate")) summarise_dir(here::here("inst/bench/taxi_multiple"), c("setup", "read", "print", "head", "tail", "sample", "filter", "aggregate")) summarise_dir(here::here("inst/bench/taxi_writing"), c("setup", "writing")) summarise_dir(here::here("inst/bench/fwf"), c("setup", "read", "print", "head", "tail", "sample", "filter", "aggregate"))