This fork was used to try and make pyphenology more sklearn compliant. In the end, we included a tutorial in springtime on how one could go about this. We are not currently not planning to develop this further, but feel free to talk to us if you're interested.
Plant phenology models in python with a scikit-learn inspired API
http://pyphenology.readthedocs.io/en/master/
Requires: scipy, pandas, joblib, and numpy
Install via pip
pip install pyPhenology
Or install the latest version from Github
pip install git+git://github.com/sdtaylor/pyPhenology
A Thermal Time growing degree day model:
from pyPhenology import models, utils
observations, predictors = utils.load_test_data(name='vaccinium')
model = models.ThermalTime()
model.fit(observations, predictors)
model.get_params()
{'t1': 85.704951490688927, 'T': 7.0814430573372666, 'F': 185.36866570243012}
Any of the parameters in a model can be set to a fixed value. For example the thermal time model with the threshold T set to 0 degrees C
model = models.ThermalTime(parameters={'T':0})
model.fit(observations, predictors)
model.get_params()
{'t1': 26.369813953905265, 'F': 333.76534368004388, 'T': 0}
If you use this software in your research please cite it as:
Taylor, S. D. (2018). pyPhenology: A python framework for plant phenology modelling. Journal of Open Source Software, 3(28), 827. https://doi.org/10.21105/joss.00827
Bibtex:
@article{Taylor2018,
author = {Taylor, Shawn David},
doi = {10.21105/joss.00827},
journal = {Journal of Open Source Software},
mendeley-groups = {Software/Data},
month = {aug},
number = {28},
pages = {827},
title = {{pyPhenology: A python framework for plant phenology modelling}},
url = {http://joss.theoj.org/papers/10.21105/joss.00827},
volume = {3},
year = {2018}
}
Development of this software was funded by the Gordon and Betty Moore Foundation's Data-Driven Discovery Initiative through Grant GBMF4563 to Ethan P. White.