rm(list = ls())
options(stringsAsFactors = F)
Sys.setenv(LANGUAGE = "en")
library(tidyverse)
library(tidymodels)
library(censored)
#data
set.seed(2022)
data <- SimSurv(2000) %>% mutate(X2 = X2 + 1)
head(data)
data_split <- initial_split(data,
strata = event,
prop = 0.7)
data_train <- training(data_split)
data_test <- testing(data_split)
#model
cox_spec <- proportional_hazards(penalty = tune(),mixture = 1) %>%
set_engine("glmnet")
#resample
cv <- vfold_cv(data = data_train,
v = 10)
#grid
lambda_grid <- grid_regular(penalty(), levels = 50)
#workflow
wf <- workflow() %>%
add_formula(Surv(time, event) ~ X1 + X2)
#training
doParallel::registerDoParallel()
set.seed(2022)
lasso_grid <- tune_grid(
wf %>% add_model(cox_spec),
resamples = cv,
grid = lambda_grid)
#Error in `check_metrics()`:
#! Unknown `mode` for parsnip model.