bench_compare

0th

Percentile

Evaluate, compare, benchmark operations of a set of srcs.

These functions support the comparison of results and timings across multiple sources.

Keywords
internal
Usage
bench_tbls(tbls, op, ..., times = 10)

compare_tbls(tbls, op, ref = NULL, compare = equal_data_frame, ...)

compare_tbls2(tbls_x, tbls_y, op, ref = NULL, compare = equal_data_frame, ...)

eval_tbls(tbls, op)

eval_tbls2(tbls_x, tbls_y, op)

Arguments
tbls, tbls_x, tbls_y

A list of tbl()s.

op

A function with a single argument, called often with each element of tbls.

For compare_tbls(): additional parameters passed on the compare() function

For bench_tbls(): additional benchmarks to run.

times

For benchmarking, the number of times each operation is repeated.

ref

For checking, an data frame to test results against. If not supplied, defaults to the results from the first src.

compare

A function used to compare the results. Defaults to equal_data_frame which ignores the order of rows and columns.

Value

eval_tbls(): a list of data frames.

compare_tbls(): an invisible TRUE on success, otherwise an error is thrown.

bench_tbls(): an object of class microbenchmark::microbenchmark()

See Also

src_local() for working with local data

Aliases
  • bench_compare
  • bench_tbls
  • compare_tbls
  • compare_tbls2
  • eval_tbls
  • eval_tbls2
Examples
# NOT RUN {
if (require("microbenchmark") && has_lahman()) {
lahman_local <- lahman_srcs("df", "sqlite")
teams <- lapply(lahman_local, function(x) x %>% tbl("Teams"))

compare_tbls(teams, function(x) x %>% filter(yearID == 2010))
bench_tbls(teams, function(x) x %>% filter(yearID == 2010))

# You can also supply arbitrary additional arguments to bench_tbls
# if there are other operations you'd like to compare.
bench_tbls(teams, function(x) x %>% filter(yearID == 2010),
   base = subset(Lahman::Teams, yearID == 2010))

# A more complicated example using multiple tables
setup <- function(src) {
  list(
    src %>% tbl("Batting") %>% filter(stint == 1) %>% select(playerID:H),
    src %>% tbl("Master") %>% select(playerID, birthYear)
  )
}
two_tables <- lapply(lahman_local, setup)

op <- function(tbls) {
  semi_join(tbls[[1]], tbls[[2]], by = "playerID")
}
# compare_tbls(two_tables, op)
bench_tbls(two_tables, op, times = 2)

}
# }
Documentation reproduced from package dplyr, version 0.7.8, License: MIT + file LICENSE

Community examples

Looks like there are no examples yet.