tidymodels でドレイクを使用する方法を学習します。
make(plan) を実行すると、単に initial_split() ではなく、rsample の initial_time_split() を使用するとエラーが発生します。私は以下を取得します:
#> > target data
#> > target split_data
#> Error in UseMethod("complement"): no applicable method for 'complement' applied to an object of class "rsplit"
これについて本当に頭を悩ませてきました。関数は独立して正常に動作します (つまり、次のように動作します)。
かなり基本的なものが欠けているように感じます。
以下は、完全なドレイク プロセスを 1 つのファイルにまとめたものです (スタック オーバーフローを簡単に投稿できるようにするため)。
私が間違っていることについて、ヒントを事前にありがとう。
library(drake)
library(tidyverse)
library(tidymodels)
###################################################################
generate_data <- function() {
tibble(x = rnorm(1e5), y = rnorm(1e5))
}
split_the_data <- function(data) {
data %>%
initial_time_split()
}
fit_model <- function(data) {
summary(lm(y ~ x, data = data))
}
###################################################################
plan <- drake_plan(
data = generate_data(),
split_data = split_the_data(data),
model = fit_model(training(split_data))
)
###################################################################
make(plan)