# 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 Maxnet model
model <- train(method = "Maxnet",
data = train,
fc = "lq")
# Remove all variables with permuation importance lower than 2%
output <- reduceVar(model,
th = 2,
metric = "auc",
test = test,
permut = 1)
# Remove variables with permuation importance lower than 3% only if testing
# TSS doesn't decrease
if (FALSE) {
output <- reduceVar(model,
th = 3,
metric = "tss",
test = test,
permut = 1,
use_jk = TRUE)
# Remove variables with permuation importance lower than 2% only if AICc
# doesn't increase
output <- reduceVar(model,
th = 2,
metric = "aicc",
permut = 1,
use_jk = TRUE,
env = predictors)
# Train a Maxent model
model <- train(method = "Maxent",
data = train,
fc = "lq")
# Remove all variables with percent contribution lower than 2%
output <- reduceVar(model,
th = 2,
metric = "auc",
test = test,
use_pc = TRUE)}
Run the code above in your browser using DataLab