epysurv is a Pythonic wrapper around the R surveillance package
that strives to implement a
scikit-learn like API for epidemiological surveillance in Python.
In a nutshell
from epysurv import data as epidata from epysurv.models.timepoint import FarringtonFlexible train, test = epidata.salmonella() train.head() # n_cases n_outbreak_cases outbreak # 2004-01-05 0 0 False # 2004-01-12 0 0 False # 2004-01-19 2 0 False # 2004-01-26 2 0 False # 2004-02-02 1 0 False model = FarringtonFlexible() model.fit(train) model.predict(test) # n_cases n_outbreak_cases outbreak alarm # 2011-01-03 1 0 False 0.0 # 2011-01-10 0 0 False 0.0 # 2011-01-17 3 0 False 0.0 # 2011-01-24 3 0 False 0.0 # 2011-01-31 3 0 False 0.0
epysurv requires both Python and R it can only be conveniently installed through
conda install -c conda-forge epysurv
To set up a local development environment, run
conda env create -f env.yml conda activate epysurv-dev pip install -r requirements-dev.txt pre-commit install
To run all tests, simply run
in the project's root directory.
If you want to contribute to the documentation, run
pip install -r requirements-doc.txt
to install the necessary packages for building the sphinx documentation.
Pull requests are highly welcome!