У меня следующий код:
library(tidymodels)
library(tidyverse)
rps <- tribble( ~estado, ~comp_move, ~move,
"gana", "piedra", "papel",
"pierde", "papel", "piedra",
"pierde", "papel", "piedra",
"gana", "tijeras", "piedra",
"gana", "piedra", "papel",
"pierde", "tijeras", "papel",
"gana", "papel", "tijeras",
"gana", "piedra", "papel",
"pierde", "papel", "piedra",
"gana", "tijeras", "piedra",
"empate", "piedra", "piedra",
"pierde", "papel", "piedra",
"empate", "papel", "papel",
"gana", "tijeras", "piedra")
rps <- rps %>% mutate_if(is.character,factor)
rps.split <- initial_split(rps, prop = 0.75)
rps.rec <- recipe(estado ~ comp_move + move, rps) %>%
step_dummy(all_nominal(),-all_outcomes())
rps.rec.prep <- rps.rec %>% prep()
base.model <- rand_forest() %>%
set_engine("ranger") %>%
set_mode("classification")
last_fit(base.model, rps.rec, rps.split)
Я также пытался использовать рабочие процессы
wfl <- workflow() %>%
add_recipe(rps.rec) %>%
add_model(base.model)
last_fit(wfl, split = rps.split)
При использовании last_fit()
я получаю следующую ошибку:
`Error: `x` and `y` must have same types and lengths`
Я использовал kknn, solution_tree, random_forest и xgboost, все получили одинаковые ошибки. Я также получаю ту же ошибку даже при настройке параметров с помощью tune_grid()
.
Дело в том, что когда я использую функцию fit()
, все работает нормально. Я знаю, что это потому, что я неправильно использую модель, но почему я получаю эту ошибку? Я новичок в пакете tidymodel.
Заранее спасибо.
> sessionInfo()
R version 3.6.0 (2019-04-26)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: macOS 10.15.5