Skip to content

Commit d104fa1

Browse files
authored
store y_var in fit output from xy interface when available (#961)
* store `y_var` in fit output from xy interface when available * restore `else` condition * transition `names()` -> `colnames()`
1 parent 145bac2 commit d104fa1

File tree

2 files changed

+9
-2
lines changed

2 files changed

+9
-2
lines changed

R/fit.R

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -265,6 +265,7 @@ fit_xy.model_spec <-
265265
rlang::warn(glue::glue("Engine set to `{object$engine}`."))
266266
}
267267
}
268+
y_var <- colnames(y)
268269

269270
if (object$engine != "spark" & NCOL(y) == 1 & !(is.vector(y) | is.factor(y))) {
270271
if (is.matrix(y)) {
@@ -278,6 +279,7 @@ fit_xy.model_spec <-
278279
eval_env <- rlang::env()
279280
eval_env$x <- x
280281
eval_env$y <- y
282+
eval_env$y_var <- y_var
281283
eval_env$weights <- weights_to_numeric(case_weights, object)
282284

283285
# TODO case weights: pass in eval_env not individual elements

R/fit_helpers.R

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -187,11 +187,16 @@ xy_form <- function(object, env, control, ...) {
187187
control = control,
188188
...
189189
)
190-
if (is.vector(env$y)) {
191-
data_obj$y_var <- character(0)
190+
if (!is.null(env$y_var)) {
191+
data_obj$y_var <- env$y_var
192192
} else {
193+
if (is.vector(env$y)) {
194+
data_obj$y_var <- character(0)
195+
}
196+
193197
data_obj$y_var <- colnames(env$y)
194198
}
199+
195200
res$preproc <- data_obj[c("x_var", "y_var")]
196201
res
197202
}

0 commit comments

Comments
 (0)