ecospat.binary.model {ecospat} | R Documentation |
Generate a binary map from a continuous model prediction.
ecospat.binary.model (Pred, Threshold)
Pred |
RasterLayer predicted suitabilities from a SDM prediction. |
Threshold |
A threshold to convert continous maps into binary maps (e.g. the output of the function |
This function generates a binary model prediction (presence/absence) from an original model applying a threshold. The threshold could be arbitrary, or be based on the maximum acceptable error of false negatives (i.e. percentage of the presence predicted as absences, omission error).
The binary model prediction (presence/absence).
Ruben G. Mateo rubeng.mateo@gmail.com with contributions of Frank Breiner frank.breiner@wsl.ch
Fielding, A.H. and J.F. Bell. 1997. A review of methods for the assessment of prediction errors in conservation presence/absence models. Environmental Conservation, 24: 38-49.
Engler, R., A Guisan and L. Rechsteiner. 2004. An improved approach for predicting the distribution of rare and endangered species from occurrence and pseudo-absence data. Journal of Applied Ecology, 41, 263-274.
Liu, C., Berry, P. M., Dawson, T. P. and R. G. Pearson. 2005. Selecting thresholds of occurrence in the prediction of species distributions. Ecography, 28, 385-393.
Jimenez-Valverde, A. and J.M.Lobo. 2007. Threshold criteria for conversion of probability of species presence to either-or presence-absence. Acta oecologica, 31, 361-369.
Liu, C., White, M. and G. Newell. 2013. Selecting thresholds for the prediction of species occurrence with presence-only data. J. Biogeogr., 40, 778-789.
Freeman, E.A. and G.G. Moisen. 2008. A comparison of the performance of threshold criteria for binary classification in terms of predicted prevalence and kappa. Ecological Modelling, 217, 48-58.
ecospat.mpa
, optimal.thresholds
library(raster)
library(dismo)
### make a maxent model
# path to maxent.jar file
path<- paste0(system.file(package="dismo"), "/java/maxent.jar")
if (file.exists(path) & require(rJava)) {
# get predictor variables
fnames <- list.files(path=paste(system.file(package="dismo"), '/ex', sep=''),
pattern='grd', full.names=TRUE )
predictors <- stack(fnames)
#plot(predictors)
# file with presence points
occurence <- paste(system.file(package="dismo"), '/ex/bradypus.csv', sep='')
occ <- read.table(occurence, header=TRUE, sep=',')[,-1]
colnames(occ) <- c("x","y")
occ <- ecospat.occ.desaggregation(occ,min.dist=1)
# fit a domain model, biome is a categorical variable
me <- maxent(predictors, occ, factors='biome')
# predict to entire dataset
pred <- predict(me, predictors)
plot(pred)
points(occ)
}
### convert suitability to binary map
mpa.cutoff <- ecospat.mpa(pred,occ,perc = 0.9) # 90 percent of the presences encompassed
pred.bin.mpa <- ecospat.binary.model(pred,mpa.cutoff)
plot(pred.bin.mpa)
points(occ)