A curated list of open technology projects to sustain a stable climate, energy supply, biodiversity and natural resources.

ENMeval

R package for automated runs and evaluations of ecological niche models.
https://github.com/jamiemkass/ENMeval

Category: Biosphere
Sub Category: Species Distribution Modeling

Keywords from Contributors

species-distribution-modelling

Last synced: about 8 hours ago
JSON representation

Repository metadata

R package for automated runs and evaluations of ecological niche models.

README.md

CRAN version downloads
License: GPL v3
R-CMD-check

ENMeval version 2.0.5

R package for automated tuning and evaluations of ecological niche models

ENMeval is an R package that performs automated tuning and evaluations of ecological niche models / species distribution models. These models make predictions of species' niche relationships and potential geographic distributions based on presence data, environmental predictor variables, and a sample of available environmental conditions (i.e., background data).

"Model tuning" is commonly used for machine-learning models. It means building candidate models with a range of complexity settings, evaluating the accuracy of each one (here with cross-validation), then selecting optimal settings for your data based on those of the best-performing model. This exercise is important because it is difficult to predict in advance how complex your model needs to be to make accurate and ecologically realistic predictions for your species. Too much model complexity leads to overfitting, where your model fits your data very well but it cannot predict new data accurately. Model tuning helps maximize predictive ability while avoiding model overfitting.

The ENMeval package features a single function that performs model tuning based on user specifications, including methods for partitioning data for cross-validation (random, leave-one-out, spatial, custom), and evaluates models using predefined performance metrics (AUC, Continuous Boyce Index, omission rates) with the option to insert others. The package includes functionality for three models: maxent.jar (Java implementation of Maxent), maxnet (R implementation of Maxent), and BIOCLIM (climate envelope method). Users can also specify other algorithms by customizing an ENMdetails object (?ENMdetails). The package also offers comprehensive metadata output, null model evaluations, visualization tools, and an extensive tutorial that walks you through a full analysis workflow. Many features in ENMeval were created in response to user requests -- thank you for your input! Version >=2.0.0 represents an extensive restructure and expansion of previous versions, and 2.0.5 is a big move from raster and dismo functions to those of terra and predicts.

For a more detailed description of ENMeval, please reference the most recent publication:

Kass, J. M., Muscarella, R., Galante, P. J., Bohl, C., Pinilla-Buitrago, G. E., Boria, R. A., Soley-Guardia, M., & Anderson, R. P. (2021). ENMeval 2.0: redesigned for customizable and reproducible modeling of species’ niches and distributions. Methods in Ecology and Evolution, 12: 1602-1608.

For the original package version, please reference this older publication:

Muscarella, R., Galante, P. J., Soley-Guardia, M., Boria, R. A., Kass, J. M., Uriarte, M. and Anderson, R. P. (2014), ENMeval: An R package for conducting spatially independent evaluations and estimating optimal model complexity for Maxent ecological niche models. Methods in Ecology and Evolution, 5: 1198–1205.

NOTES:

  1. ENMeval is a work in progress, changing slowly to fix bugs when users identify them. If you find a bug, please raise an Issue in this Github repo and I will resolve it as soon as I can. The CRAN version may lag behind the Github one, so please try the development version here first if you are having any issues.
    Install with: devtools::install_github("jamiemkass/ENMeval")

  2. The vignette is not included in the CRAN version of the package due to file size constraints, but is available on the package's Github Pages website.

  3. Please make sure to use the most recent version of maxent.jar , as bug fixes are occasionally made.

  4. Note that as of version 0.3.0, the default implementation uses the 'maxnet' R package. The output from this differs from that of the original Java program and so some features are not compatible (e.g., variable importance, html output).


Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 6 days ago

Total Commits: 759
Total Committers: 12
Avg Commits per committer: 63.25
Development Distribution Score (DDS): 0.379

Commits in past year: 69
Committers in past year: 4
Avg Commits per committer in past year: 17.25
Development Distribution Score (DDS) in past year: 0.391

Name Email Commits
Jamie M. Kass j****s@g****m 471
Bob Muscarella b****a@g****m 234
Jamie Kass k****s@J****l 22
Jamie Kass k****s@J****l 10
Gonzalo g****b@g****m 9
Pgalante p****e@a****g 6
Jamie M. Kass j****s@g****u 2
Ahmed El-Gabbas e****s@o****m 1
pgalante p****e@g****m 1
Jamie M Kass k****1@J****l 1
Jamie M Kass k****1@J****l 1
Jamie Kass k****s@J****l 1

Committer domains:


Issue and Pull Request metadata

Last synced: 1 day ago

Total issues: 103
Total pull requests: 21
Average time to close issues: 11 months
Average time to close pull requests: about 2 months
Total issue authors: 64
Total pull request authors: 7
Average comments per issue: 4.77
Average comments per pull request: 0.76
Merged pull request: 15
Bot issues: 0
Bot pull requests: 0

Past year issues: 11
Past year pull requests: 0
Past year average time to close issues: about 2 months
Past year average time to close pull requests: N/A
Past year issue authors: 9
Past year pull request authors: 0
Past year average comments per issue: 3.45
Past year average comments per pull request: 0
Past year merged pull request: 0
Past year bot issues: 0
Past year bot pull requests: 0

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/jamiemkass/ENMeval

Top Issue Authors

  • bobmuscarella (13)
  • gepinillab (5)
  • jamiemkass (3)
  • joshbanta (3)
  • mclinx013 (3)
  • GM-Crowley (3)
  • jasonbmackenzie (3)
  • momeni133 (3)
  • aanaranjo (2)
  • plantarum (2)
  • PatWright (2)
  • adwiputra (2)
  • KellumTJ (2)
  • elgabbas (2)
  • TBlab-why (2)

Top Pull Request Authors

  • gepinillab (11)
  • johnsonojeda (4)
  • bobmuscarella (2)
  • kant (1)
  • PetrBalej (1)
  • elgabbas (1)
  • btupper (1)

Top Issue Labels

  • bug (7)
  • enhancement (6)
  • question (2)

Top Pull Request Labels


Package metadata

cran.r-project.org: ENMeval

Automated Tuning and Evaluations of Ecological Niche Models

  • Homepage: https://jamiemkass.github.io/ENMeval/
  • Documentation: http://cran.r-project.org/web/packages/ENMeval/ENMeval.pdf
  • Licenses: GPL-3
  • Latest release: 2.0.5 (published 3 months ago)
  • Last Synced: 2025-04-27T13:03:32.996Z (about 8 hours ago)
  • Versions: 13
  • Dependent Packages: 5
  • Dependent Repositories: 16
  • Downloads: 3,905 Last month
  • Docker Downloads: 11
  • Rankings:
    • Forks count: 2.623%
    • Dependent repos count: 7.12%
    • Stargazers count: 7.497%
    • Dependent packages count: 8.144%
    • Downloads: 9.641%
    • Average: 10.01%
    • Docker downloads count: 25.038%
  • Maintainers (1)

Dependencies

DESCRIPTION cran
  • R >= 3.5.0 depends
  • magrittr * depends
  • methods * depends
  • dismo * imports
  • doParallel * imports
  • doSNOW * imports
  • dplyr * imports
  • foreach * imports
  • ggplot2 * imports
  • glmnet * imports
  • grDevices * imports
  • graphics * imports
  • maxnet * imports
  • parallel * imports
  • rangeModelMetadata * imports
  • raster * imports
  • rlang * imports
  • sp * imports
  • stats * imports
  • testthat * imports
  • tidyr * imports
  • utils * imports
  • RColorBrewer * suggests
  • blockCV * suggests
  • devtools * suggests
  • ecospat * suggests
  • knitr * suggests
  • latticeExtra * suggests
  • rJava >= 0.5 suggests
  • rasterVis * suggests
  • rmarkdown * suggests
  • sf * suggests
  • spocc * suggests
  • tibble * suggests
.github/workflows/R-CMD-check.yaml actions
  • actions/checkout v2 composite
  • actions/upload-artifact main composite
  • r-lib/actions/check-r-package v2 composite
  • r-lib/actions/setup-pandoc v2 composite
  • r-lib/actions/setup-r v2 composite
  • r-lib/actions/setup-r-dependencies v2 composite
.github/workflows/pkgdown.yaml actions
  • actions/checkout v2 composite
  • r-lib/actions/setup-pandoc v2 composite
  • r-lib/actions/setup-r v2 composite
  • r-lib/actions/setup-r-dependencies v2 composite

Score: 14.75257285932318