This is the home of Delphi's epidemiological data API. See our API documentation for details on the available data sets, APIs, and clients.
Requires: Docker, possibly sudo access (depending on your Docker installation and OS).
In the directory where you want to work run the following:
# Make folder structure, download dependent repos, and symlink Makefile
$ curl "https://raw.githubusercontent.com/cmu-delphi/delphi-epidata/dev/dev/local/install.sh" | bash
You should now have the following directory structure:
├── driver
│ ├── .dockerignore -> repos/delphi/delphi-epidata/dev/local/.dockerignore
│ ├── Makefile -> repos/delphi/delphi-epidata/dev/local/Makefile
│ ├── repos
│ │ ├── pyproject.toml -> delphi/delphi-epidata/dev/local/pyproject.toml
│ │ ├── setup.cfg -> delphi/delphi-epidata/dev/local/setup.cfg
│ │ └── delphi
│ │ ├── delphi-epidata
│ │ ├── flu-contest
│ │ ├── github-deploy-repo
│ │ ├── nowcast
│ │ ├── operations
│ │ └── utils
and you should now be in the driver
directory.
You can now execute make commands
# Create all docker containers: db, web, and python
$ [sudo] make all
# Run tests
$ [sudo] make test
# To drop into debugger on error
$ [sudo] make test pdb=1
# To test only a subset of tests
$ [sudo] make test test=repos/delphi/delphi-epidata/integrations/acquisition
Enabling features like code autocompletion and linting in your editor requires one extra step (prerequisites: up-to-date pip and setuptools v64+):
$ cd repos
# Installs the working directory as an "editable package"
$ pip install -e . --config-settings editable_mode=strict
At the present, our primary focus is developing and expanding the COVIDcast API, which offers a number of data streams relating to the ongoing COVID-19 pandemic and powers the COVIDcast project.
Our other, non-COVID data sources remain generally available on a best-effort basis. However, non-COVID sources should be held to scrutiny at this time since they were designed to serve as indicators of typical seasonal ILI (influenza-like illness), not pandemic ILI or CLI (COVID-like illness).
For a high-level introduction to the COVIDcast API, see our recent blog post.
If you are interested in contributing:
- For development of the API itself, see the development guide.
- To suggest changes, additions, or other ways to improve, open an issue describing your idea.
We hope that this API is useful to others outside of our group, especially for epidemiological and other scientific research. If you use this API and would like to cite it, we would gratefully recommend the following copy:
David C. Farrow, Logan C. Brooks, Ryan J. Tibshirani, Roni Rosenfeld (2015). Delphi Epidata API. https://github.com/cmu-delphi/delphi-epidata
See related work for a sample of additional work in this area.