Skip to content

Commit 34f74fe

Browse files
authored
speed up prepare_data() helper (#935)
1 parent dfa7d9a commit 34f74fe

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

R/predict.R

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -400,12 +400,16 @@ prepare_data <- function(object, new_data) {
400400
new_data <- .convert_xy_to_form_new(object$preproc, new_data)
401401
}
402402

403+
encodings <- get_encoding(class(object$spec)[1])
403404
remove_intercept <-
404-
get_encoding(class(object$spec)[1]) %>%
405-
dplyr::filter(mode == object$spec$mode, engine == object$spec$engine) %>%
406-
dplyr::pull(remove_intercept)
405+
vctrs::vec_slice(
406+
encodings$remove_intercept,
407+
encodings$mode == object$spec$mode &
408+
encodings$engine == object$spec$engine
409+
)
410+
407411
if (remove_intercept & any(grepl("Intercept", names(new_data)))) {
408-
new_data <- new_data %>% dplyr::select(-dplyr::one_of("(Intercept)"))
412+
new_data <- new_data[, colnames(new_data) != "(Intercept)", drop = FALSE]
409413
}
410414

411415
fit_interface <- object$spec$method$fit$interface

0 commit comments

Comments
 (0)