Skip to content

Commit 30d606b

Browse files
committed
Reorder microbenchmark results based on optional ordervar
1 parent 9f4d6d2 commit 30d606b

File tree

3 files changed

+14
-7
lines changed

3 files changed

+14
-7
lines changed

ChangeLog

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
2025-12-16 Dirk Eddelbuettel <edd@debian.org>
2+
3+
* R/reorderMicrobenchmarkResults.R: Use 'ordervar' to order
4+
15
2025-11-29 Dirk Eddelbuettel <edd@debian.org>
26

37
* .github/workflows/ci.yaml: Switch to actions/checkout@v6

R/reorderMicrobenchmarkResults.R

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,15 +9,18 @@
99
#'
1010
#' @title Reorder microbenchmark Results
1111
#' @param res An object returned from `microbenchmark::microbenchmark`
12-
#' @param order An option character variable selecting a column to order on,
12+
#' @param ordervar An option character variable selecting a column to order on,
1313
#' defaults to 'median'
1414
#' @return A modified version of `res` with an ordering by `order`
15-
reorderMicrobenchmarkResults <- function(res, order="median") {
16-
stopifnot("Argument 'res' must be a 'microbenchmark' result" = inherits(res, "microbenchmark"))
15+
reorderMicrobenchmarkResults <- function(res, ordervar="median") {
16+
stopifnot("Argument 'res' must be a 'microbenchmark' result" =
17+
inherits(res, "microbenchmark"),
18+
"Argument 'ordervar' must be a column name in 'summary(res)'" =
19+
is.finite(match(ordervar, names(summary(res)))))
1720

1821
smry <- summary(res)
1922
res$expr <- factor(res$expr,
20-
levels = levels(res$expr)[order(smry[["median"]])],
23+
levels = levels(res$expr)[order(smry[[ordervar]])],
2124
ordered = TRUE)
2225
res
2326
}

man/reorderMicrobenchmarkResults.Rd

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)