Skip to content

Commit 0127f2d

Browse files
authored
speed up deharmonize() helper (#902)
1 parent 3cb0914 commit 0127f2d

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

R/translate.R

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -138,9 +138,17 @@ get_args <- function(model, engine) {
138138

139139
# to replace harmonize
140140
deharmonize <- function(args, key) {
141-
if (length(args) == 0)
141+
if (length(args) == 0) {
142142
return(args)
143-
parsn <- tibble(parsnip = names(args), order = seq_along(args))
143+
}
144+
145+
if (nrow(key) == 0) {
146+
return(args[integer(0)])
147+
}
148+
149+
parsn <- list(parsnip = names(args), order = seq_along(args))
150+
parsn <- tibble::new_tibble(parsn, nrow = length(args))
151+
144152
merged <-
145153
dplyr::left_join(parsn, key, by = "parsnip") %>%
146154
dplyr::arrange(order)

0 commit comments

Comments
 (0)