ENMTML | R Documentation |
Create and process Ecological Niche Models
ENMTML(
pred_dir,
proj_dir = NULL,
result_dir = NULL,
occ_file,
sp,
x,
y,
min_occ = 10,
thin_occ = NULL,
eval_occ = NULL,
colin_var = NULL,
imp_var = FALSE,
sp_accessible_area = NULL,
pseudoabs_method,
pres_abs_ratio = 1,
part,
save_part = FALSE,
save_final = TRUE,
algorithm,
thr,
msdm = NULL,
ensemble = NULL,
extrapolation = FALSE,
cores = 1
)
pred_dir |
character. Directory path with predictors (file formats supported are ASC, BILL, TIFF or TXT) |
proj_dir |
character. Directory path containing folders with predictors for different regions or time periods used to project models (file formats supported are ASC, BILL, TIFF, or TXT). |
result_dir |
character. Directory path with the folder in which model results will be recorded.
|
occ_file |
character. Directory path with the tab-delimited TXT file, which will contain at least three columns with information about species names, and the latitude and longitude of species occurrences. |
sp |
character. Name of the column with information about species names. |
x |
character. Name of the column with information about longitude. |
y |
character. Name of the column with information about latitude. |
min_occ |
integer. Minimum number of unique occurrences (species with less than this number will be excluded). |
thin_occ |
character. Perform spatial filtering (Thinning, based on spThin package) on the presences. For this augment it is necessary provide a vector in which its elements need to have the names 'method' or 'method' and 'distance' (more information below). Three thinning methods are available (default NULL):
|
eval_occ |
character. Directory path with tab-delimited TXT file with species names, latitude and longitude, these three columns must have the same columns names than the database used in the occ_file argument. This external occurrence database will be used to external models validation (i.e., it will no be use to model fitting). (default NULL). |
colin_var |
character. Method to reduce variable collinearity:
|
imp_var |
logical. Perform variable importance and data for curves response for selected algorithms? (default FALSE) |
sp_accessible_area |
character. Restrict for each species the accessible area, i.e., the area used to model fitting. It is necessary to provide a vector for this argument. Three methods were implemented
|
pseudoabs_method |
character. Pseudo-absence allocation method. It is necessary to provide a vector for this argument. Only one method can be chosen. The next methods are implemented:
|
pres_abs_ratio |
numeric. Presence-Absence ratio (values between 0 and 1) |
part |
character. Partition method for model's validation. Only one method can be chosen. It is necessary to provide a vector for this argument. The next methods are implemented:
|
save_part |
logical. If TRUE, function will save .tif files of partial models, i.e. model created by each occurrence partitions. (default FALSE). |
save_final |
logical. If TRUE, function will save .tif files of the final model, i.e. fitted with all occurrences data. (default TRUE) |
algorithm |
character. Algorithm to construct ecological niche models (it is possible to use more than one method):
|
thr |
character. Threshold used for presence-absence predictions. It is possible to use more than one threshold type. It is necessary to provide a vector for this argument:
In the case of use more than one threshold type it is necessary concatenate the names of threshold types, e.g., thr=c(type=c('LPT', 'MAX_TSS', 'JACCARD')). When SENSITIVITY threshold is used in combination with other it is necessary specify the desired sensitivity value, e.g. thr=c(type=c('LPT', 'MAX_TSS', 'SENSITIVITY'), sens='0.8') |
msdm |
character. Include spatial restrictions to model projection. These methods restrict ecological niche models in order to have less potential prediction and turn models closer to species distribution models. They are classified in 'a Priori' and 'a Posteriori' methods. The first one encompasses method that include geographical layers as predictor of models' fitting, whereas a Posteriori constrain models based on occurrence and suitability patterns. This argument is filled only with a method, in the case of use MCP-B method msdm is filled in a different way se below: a Priori methods (layer created area added as a predictor at moment of model fitting):
a Posteriori methods
|
ensemble |
character. Method used to ensemble different algorithms. It is possible to use more than one method. A vector must be provided for this argument. For SUP, W_MEAN or PCA_SUP method it is necessary provide an evaluation metric to ensemble arguments (i.e., AUC, Kappa, TSS, Jaccard, Sorensen or Fpb) see below. (default NULL):
In the case of use more than one ensemble method it is necessary concatenate the names of ensemble methods within the argument, e.g., ensemble=c(method=c('MEAN', 'PCA')), ensemble=c(method=c('MEAN, 'W_MEAN', 'PCA_SUP'), metric='Fpb') |
extrapolation |
logical. If TRUE the function will calculate extrapolation based on Mobility-Oriented Parity analysis (MOP) for current conditions. If the argument proj_dir is used, the extrapolation layers for other regions or time periods will also be calculated. |
cores |
numeric. Define the number of CPU cores to run modeling procedures in parallel (default 1). |
require(ENMTML)
require(raster)
##%######################################################%##
# #
#### Directories and data creation ####
# #
##%######################################################%##
# ENMTML package account with some bioclimantic variables
# used to test ENMTML function.
# In order to simulate the files and folders needed for an ENMTML function
# will be created different folders with some data
# First will be created a folder with a working directory
getwd() #' Working directory of R session
d_ex <- file.path(getwd(), 'ENMTML_example')
d_ex
dir.create(d_ex)
# Will be saved some ENMTML data sets to ENMTML_example folder
# Virtual species occurrences
data("occ")
d_occ <- file.path(d_ex, 'occ.txt')
utils::write.table(occ, d_occ, sep = '\t', row.names = FALSE)
# Five bioclimatic variables for current conditions
data("env")
d_env <- file.path(d_ex, 'current_env_var')
dir.create(d_env)
raster::writeRaster(env, file.path(d_env, names(env)), bylayer=TRUE, format='GTiff')
# Five bioclimatic variables for future conditions
# (for more details see predictors_future help)
data("env_fut")
d_fut <- file.path(d_ex, 'future_env_var')
dir.create(d_fut)
d0 <- file.path(d_fut, names(env_fut))
sapply(d0, dir.create)
raster::writeRaster(env_fut$`2080_4.5`, file.path(d0[1],
names(env_fut$`2080_4.5`)), bylayer=TRUE, format='GTiff')
raster::writeRaster(env_fut$`2080_8.5`, file.path(d0[2],
names(env_fut$`2080_8.5`)), bylayer=TRUE, format='GTiff')
# Polygon of terrestrial ecoregions
data("ecoregions")
d_eco <- file.path(d_ex, 'ecoregions')
dir.create(d_eco)
d_eco <- file.path(d_eco, paste0('eco','.shp'))
shapefile(ecoregions, d_eco)
# shell.exec(d_ex) # open the directory and folders created
rm(list = c('d0', 'd_ex', 'ecoregions', 'env', 'env_fut', 'occ'))
# Now we have the minimum data needed to create models with ENMTML package
# a directory with environmental rasters and a .txt file with occurrence
##%######################################################%##
# #
#### Construction ENM with ENMTML ####
# #
##%######################################################%##
args(ENMTML)
# ENMTML provides a variety of tools to build different models
# depending on the modeling objectives.
# Here will be provided a single modeling procedure.
# For more example and exploration of models
# see <https://github.com/andrefaa/ENMTML>
# Will be fitted models for five virtual species with
# current and future conditions. Please read ENMTML arguments.
# The next object contains the directory and file path data and folders that will be used
d_occ # file path with species occurrences
d_env # directory path with current environmental conditions (raster in tiff format)
d_fut # directory path with folders with future environmental conditions (raster in tiff format)
d_eco # file path with shapefile used to constrain models
ENMTML(
pred_dir = d_env,
proj_dir = NULL,
result_dir = NULL,
occ_file = d_occ,
sp = 'species',
x = 'x',
y = 'y',
min_occ = 10,
thin_occ = NULL,
eval_occ = NULL,
colin_var = c(method='PCA'),
imp_var = FALSE,
sp_accessible_area = c(method='BUFFER', type='2', width='500'),
pseudoabs_method = c(method = 'RND'),
pres_abs_ratio = 1,
part=c(method= 'KFOLD', folds='2'),
save_part = FALSE,
save_final = TRUE,
algorithm = c('SVM', 'RDF', 'MXD'),
thr = c(type='MAX_TSS'),
msdm = NULL,
ensemble = c(method='PCA'),
extrapolation = FALSE,
cores = 1
)
# ENMTML function will create a folder named Result a directory
# prior to the directory specified in the pred_dir argument
d_env # Directory used to define environmental variables
d_rslt <- file.path(dirname(d_env), 'Result')
d_rslt
# shell.exec(d_rslt) # for Windows users
# List of txt files and subdirectories
list.files(d_rslt)
list.dirs(d_rslt)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.