/epiweeks

Epidemiological weeks calculation based on the US CDC (MMWR) and ISO week numbering systems

Primary LanguagePythonMIT LicenseMIT

EpiWeeks

A Python package to calculate epidemiological weeks using the US CDC (MMWR) and ISO week numbering systems.

Release Status Coverage Status Code Quality Docs Status PyPI Downloads PyPI Version Conda Version Package License

Features

  • Support for both the US CDC (MMWR) and ISO week numbering systems.
  • Accurate and tested calculations.
  • Intuitive, clean, and easy-to-use interface.
  • Calculation of the start and end dates of weeks.
  • Iteration of year's weeks or week's dates.
  • Rich comparison between weeks.
  • Logical operations for weeks (addition, subtraction and containment).
  • Validation of input data.
  • Works on Python 3.8+ with zero dependencies.
  • Thoroughly tested with 100% test coverage.

Installation

To install using pip, run:

pip install epiweeks

To install using conda, run:

conda install -c bioconda epiweeks

Basic Usage

from epiweeks import Week, Year

week = Week(2019, 1)
print(week.enddate())
# 2019-01-05

for week in Year(2019).iterweeks():
    print(week.enddate())
# 2019-01-05
# 2019-01-12
# ...
# 2019-12-21
# 2019-12-28

Documentation

Please see https://epiweeks.readthedocs.io for full documentation of this package, including background, more usage examples and API reference.

License

This project is licensed under the terms of the MIT license.