Ошибка в настройке параметров - PullRequest
0 голосов
/ 01 октября 2018

Я хочу приспособить модель выживания, используя технику случайного леса с пакетом рейнджеров.
Данные (df) в коде - это примерные данные, реальные данные состоят из около 1000 наблюдений и 5 переменных (включая время и результат).

library(survival); library(mlr); library(ranger); 
#library(dplyr) also requried
#> Loading required package: ParamHelpers

df <- dplyr::tribble(
  ~Time, ~Outcome, ~factorA,
  10, 1, "Cat1",
  70, 0, "Cat1",
  60, 1, "Cat2",
  10, 1, "Cat1",
  40, 1, "Cat1",
  10, 1, "Cat2",
  10, 1, "Cat1",
  30, 0, "Cat1",
  10, 1, "Cat2",
  20, 0, "Cat1",
  50, 1, "Cat2",
  10, 1, "Cat2",
  50, 0, "Cat1",
  10, 1, "Cat1",
  10, 1, "Cat1",
)


df <- as.data.frame(df)
df$factorA <- factor(df$factorA)

surv_task <- makeSurvTask(data = df, target = c("Time", "Outcome"))

# Ranger params
ran_param <- makeParamSet(
  makeDiscreteParam("splitrule", values = c("logrank", "C", "maxstat"))
)

ctrl <-  makeTuneControlGrid()
rdesc <- makeResampleDesc("CV", iters = 3L)

check <- tuneParams("surv.ranger", surv_task, rdesc, par.set = ran_param, control = ctrl)
#> [Tune] Started tuning learner surv.ranger for parameter set:
#>               Type len Def            Constr Req Tunable Trafo
#> splitrule discrete   -   - logrank,C,maxstat   -    TRUE     -
#> With control class: TuneControlGrid
#> Imputation value: -0
#> [Tune-x] 1: splitrule=logrank
#> Error in `[.data.frame`(num.response, x == y): undefined columns selected

Кто-нибудь может помочь в понимании, почему ошибка?
Какой должен быть правильный подход?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...