Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/daniel-furman/python-species-distribution-modeling
A brief Python tutorial for geospatial classification.
https://github.com/daniel-furman/python-species-distribution-modeling
geospatial mapping python species-distribution-modelling
Last synced: about 1 month ago
JSON representation
A brief Python tutorial for geospatial classification.
- Host: GitHub
- URL: https://github.com/daniel-furman/python-species-distribution-modeling
- Owner: daniel-furman
- License: mit
- Created: 2020-11-03T17:48:05.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2022-08-29T00:21:02.000Z (over 2 years ago)
- Last Synced: 2024-01-27T16:51:18.266Z (12 months ago)
- Topics: geospatial, mapping, python, species-distribution-modelling
- Language: HTML
- Homepage: https://bit.ly/sdms-tutorial
- Size: 21.7 MB
- Stars: 10
- Watchers: 1
- Forks: 4
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Species Distribution Models in Python
---
See the ***tutorial link***.---
A short tutorial for spatial classification in Python through an example in species distribution modeling. Read on for more advanced applications of SDM modeling in ecological research, which, at heart, use the same basics as covered in the tutorial.
## Examples of SDMs research outputs using Python
### Example 1: "EcoRisk Forecasts - California" for DAT/Artathon 2021
### Descriptive Stats for Climatic Change between 1985 to 2070 at Species Presences:
Bioclimatic Variable | Coast redwood % Change | Giant sequoia % Change | Joshua tree % Change
-----|-------|-------|-------
Temperature Annual Mean | +22% | +47% | +24%
Temperature Annual Range | +5% | +4% | +2%
Precipitation Driest Month | -1% | -2% | -7%* SSP 370 [CMIP6](https://www.worldclim.org/data/cmip6/cmip6climate.html) models for the IPCC6 report.
* Bioclimatic Features from [WorldClim2](https://www.worldclim.org/data/worldclim21.html)
* Species presences from GBIF and carefully cleaned
### Example 2: Probablistic near-current interpolation
* Blending methods boosted model performances to ~ two-zero false negatives per species.
**Coast redwood** SDM geo-classification (*Sequoia sempervirens*) | Standard deviations from multiple seeds/samples.
:---------------------------------:|:----------------------------------------:
![](examples/coast_redwoods/curr-cr.png) | ![](examples/coast_redwoods/current-sd.png)**Giant sequioa** SDM geo-classification (*Sequoiadendron giganteum*) | Standard deviations from multiple seeds/samples.
:---------------------------------:|:----------------------------------------:
![](examples/giant_sequoias/curr-gs.png) | ![](examples/giant_sequoias/curr-sd.png)**Joshua tree** SDM geo-classification (*Yucca brevifolia*) | Standard deviations from multiple seeds/samples.
:---------------------------------:|:----------------------------------------:
![](examples/joshua_trees/curr-jtree.png) | ![](examples/joshua_trees/curr-sd2.png)### Requirements
---
Python dependencies are listed in a `requirements-py.txt` file, including the library version numbers. You can replicate the environment your codebase needs by using virtualenv:
```
# This creates the virtual environment
cd $PROJECT-PATH
virtualenv ensemble-climate-projections
```
Then install the dependencies by referring to the requirements-py.txt:
```
# This installs the modules
pip install -r requirements-py.txt# This activates the virtual environment
source ensemble-climate-projections/bin/activate
```