-
Notifications
You must be signed in to change notification settings - Fork 27
/
stacks.R
46 lines (42 loc) · 1.43 KB
/
stacks.R
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#' Initialize a Stack
#'
#' @description
#'
#' The `stacks()` function initializes a `data_stack` object. Principally,
#' `data_stack`s are tibbles, where the first column gives
#' the true outcome in the assessment set, and the remaining
#' columns give the predictions from each candidate ensemble
#' member. (When the outcome is numeric, there’s only one column per candidate
#' member. For classification, there are as many columns per candidate
#' member as there are levels in the outcome variable minus 1.) They also bring
#' along a few extra attributes to keep track of model definitions, resamples,
#' and training data.
#'
#' See `?stacks_description` for more discussion of the package, generally,
#' and the `basics` vignette for a detailed walk-through of functionality.
#'
#' @param ... Additional arguments. Currently ignored.
#'
#' @return A `data_stack` object.
#'
#' @family core verbs
#'
#' @export
stacks <- function(...) {
check_empty_ellipses(...)
stack <- tibble::tibble()
attr(stack, "rs_hash") <- "init_"
attr(stack, "outcome") <- "init_"
attr(stack, "mode") <- "init_"
attr(stack, "train") <- tibble::tibble()
attr(stack, "model_defs") <- list()
attr(stack, "cols_map") <- list()
attr(stack, "model_metrics") <- list()
attr(stack, "splits") <- tibble::tibble()
stack <-
structure(
stack,
class = c("data_stack", class(stack))
)
if (data_stack_constr(stack)) {stack}
}