## ----fig.width=7-------------------------------------------------------------- library(unifiedml) # this package require(caret) set.seed(123) ## ----fig.width=7-------------------------------------------------------------- iris_binary <- iris[iris$Species %in% c("setosa", "versicolor"), ] X_binary <- iris_binary[, 1:4] y_binary <- as.factor(as.character(iris_binary$Species)) # factor → classification datasplit <- unifiedml::train_test_split(X_binary, y_binary, test_size = 0.3, seed = 42) mod <- Model$new(caret::train) mod$fit(datasplit$X_train, datasplit$y_train, method = "rf", trControl = caret::trainControl(method = "none")) print(head(mod$predict(datasplit$X_test))) print(head(mod$predict(datasplit$X_test, type="prob"))) ## ----fig.width=7-------------------------------------------------------------- X <- iris[, 1:4] y <- iris$Species # factor → classification datasplit <- unifiedml::train_test_split(X, y, test_size = 0.3, seed = 42) mod <- Model$new(caret::train) mod$fit(datasplit$X_train, datasplit$y_train, method = "glmnet", tuneGrid = data.frame(alpha = 0, # ridge regression lambda = 0.01), # fixed lambda trControl = caret::trainControl(method = "none")) print(head(mod$predict(datasplit$X_test))) print(head(mod$predict(datasplit$X_test, type="prob"))) (cv <- cross_val_score(mod, datasplit$X_train, datasplit$y_train, cv = 5L, fit_params=list(method = "glmnet", tuneGrid = data.frame(alpha = 0, # ridge regression lambda = 0.01), # fixed lambda trControl = caret::trainControl(method = "none")))) # Auto-uses accuracy cat("\nMean Accuracy:", mean(cv), "\n") (cv <- cross_val_score(mod, datasplit$X_train, datasplit$y_train, cv = 5L, fit_params=list(method = "glmnet", tuneGrid = data.frame(alpha = 0.5, # ridge regression lambda = 0.01), # fixed lambda trControl = caret::trainControl(method = "none")))) # Auto-uses accuracy cat("\nMean Accuracy:", mean(cv), "\n")