# Acquire environmental variables
files <- list.files(path = file.path(system.file(package = "dismo"), "ex"),
                    pattern = "grd",
                    full.names = TRUE)
predictors <- terra::rast(files)
# Prepare presence and background locations
p_coords <- virtualSp$presence
bg_coords <- virtualSp$background
# Create SWD object
data <- prepareSWD(species = "Virtual species",
                   p = p_coords,
                   a = bg_coords,
                   env = predictors,
                   categorical = "biome")
# Split presence locations in training (80%) and testing (20%) datasets
datasets <- trainValTest(data,
                         test = 0.2,
                         only_presence = TRUE)
train <- datasets[[1]]
test <- datasets[[2]]
# Train a model
model <- train(method = "Maxnet",
               data = train,
               fc = "l")
# Compute the training AUC
auc(model)
# Compute the testing AUC
auc(model,
    test = test)
# \donttest{
# Same example but using cross validation instead of training and testing
# datasets
folds <- randomFolds(data,
                     k = 4,
                     only_presence = TRUE)
model <- train(method = "Maxnet",
               data = data,
               fc = "l",
               folds = folds)
# Compute the training AUC
auc(model)
# Compute the testing AUC
auc(model,
    test = TRUE)
# Compute the AUC for the held apart testing dataset
auc(model,
    test = test)# }
Run the code above in your browser using DataLab