https://github.com/daniel-furman/pysdms
A Python class for AutoML spatial classification (designed for Species Distribution Modeling applications).
https://github.com/daniel-furman/pysdms
ecological-modeling geospatial-analysis pycaret species-distribution-modeling
Last synced: 6 months ago
JSON representation
A Python class for AutoML spatial classification (designed for Species Distribution Modeling applications).
- Host: GitHub
- URL: https://github.com/daniel-furman/pysdms
- Owner: daniel-furman
- License: mit
- Created: 2021-04-07T04:37:58.000Z (about 4 years ago)
- Default Branch: pypi-deployed
- Last Pushed: 2021-09-05T22:51:57.000Z (over 3 years ago)
- Last Synced: 2024-11-13T00:56:55.096Z (7 months ago)
- Topics: ecological-modeling, geospatial-analysis, pycaret, species-distribution-modeling
- Language: Python
- Homepage: https://pypi.org/project/PySDMs/
- Size: 26 MB
- Stars: 3
- Watchers: 1
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## PySDMs
[](https://travis-ci.com/daniel-furman/PySDMs)
`from PySDMs import PySDMs`
---
## 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.
:---------------------------------:|:----------------------------------------:
 | **Giant sequioa** SDM geo-classification (*Sequoiadendron giganteum*) | Standard deviations from multiple seeds/samples.
:---------------------------------:|:----------------------------------------:
 | **Joshua tree** SDM geo-classification (*Yucca brevifolia*) | Standard deviations from multiple seeds/samples.
:---------------------------------:|:----------------------------------------:
 | ## Bio
An object-oriented Python class for semi-auto ML geo-classification (running on PyCaret). Compares gradient boosted tree algorithms by default, with options to include soft voters and NNs. Designed for Species Distribution Modeling applications.
## Package Layout
* [PySDMs](https://github.com/daniel-furman/PySDMs/tree/main/PySDMs)/ - the library code itself
* [LICENSE](https://github.com/daniel-furman/PySDMs/blob/main/LICENSE) - the MIT license, which applies to this package
* README.md - the README file, which you are now reading
* [requirements.txt](https://github.com/daniel-furman/PySDMs/blob/main/requirements.txt) - prerequisites to install this package, used by pip
* [setup.py](https://github.com/daniel-furman/PySDMs/blob/main/setup.py) - installer script
* [tests](https://github.com/daniel-furman/PySDMs/tree/main/test)/ - unit tests## Functions
**self.fit():** Model training with PyCaret, considering tree-based
methods, neural nets, and best-subset-selection soft voting blends.
Requires a data-frame with a classification target and numerical
explanatory features. Returns the voter with the best validation
metric performance (default metric=F1).**self.interpolate():** Geo-classification function for model interpolation to
raster feature surfaces. Saves to file both probabilistic and binary
distribution predictions.**self.validation_performance():** Metric scores and AUC visuals on the test set.