ГлавнаяБлогEpisia: Python-библиотека для эпидемиологического моделирования
Python

Episia: Python-библиотека для эпидемиологического моделирования

Episia — Python-библиотека для эпидемиологического анализа, моделирования и отчетности. Узнайте, как она работает и как использовать её в своих проектах.

Al
Редакция Algolitalgolit.ru
5 мин чтения2 июля 2026 г.

Зачем нужна Episia?

Если вы работаете с эпидемиологическими данными в ограниченных условиях, то знаете, что инструменты вроде OpenEpi или R-пакетов разрозненны. Episia объединяет компартментное моделирование, биостатистику, обработку данных наблюдений и автоматическую отчетность в едином Python API, работающем офлайн. Это библиотека с открытым исходным кодом, созданная для реальных полевых условий.

Основные возможности

Episia покрывает полный аналитический цикл: от сырых данных наблюдений до эпидемического моделирования и автоматических отчетов.

from episia import epi

# Компартментная модель SEIR
model = epi.seir(
    N=1_000_000, I0=10, E0=50,
    beta=0.35, sigma=1/5.2, gamma=1/14
)
result = model.run()
print(result)
# SEIR Model
#   R0            : 4.900
#   Peak infected : 331,751  at t=84.5
#   Final size    : 99.2%

# Биостатистика: отношение рисков
rr = epi.risk_ratio(a=40, b=10, c=20, d=30)
print(rr)
# Risk Ratio: 2.667 (1.514-4.696)

# Автоматический HTML-отчет
report = epi.report(result, title="SEIR Burkina Faso 2024")
report.save_html("report.html")

Ключевые проектные решения

Унифицированные объекты результатов

Каждая функция возвращает единый сериализуемый объект, что обеспечивает единообразие при построении графиков, экспорте и создании отчетов.

Валидация на основе эталонов

Кроме юнит-тестов (1490+ тестов, 84% покрытия), ядро библиотеки систематически валидируется против OpenEpi. Полный ноутбук сравнения доступен в репозитории.

Офлайн-дизайн

Episia не требует сетевых зависимостей во время выполнения, за исключением опционального коннектора к DHIS2 для загрузки данных. Это критично для полевых условий с нестабильным интернетом.

Двойной бэкенд визуализации

Каждая функция построения графиков принимает параметр backend: "plotly" для интерактивных графиков или "matplotlib" для публикационных — один и тот же код.

Текущее состояние

Episia версии 0.1.3 доступна на PyPI (pip install episia), проходит рецензирование pyOpenSci (issue #317) и имеет препринт на medRxiv. Исходный код на GitHub под лицензией MIT.

Что делать прямо сейчас

Установите Episia: pip install episia. Протестируйте API на своих данных: запустите модель SEIR, вычислите отношение рисков, сформируйте отчет. Если найдете баги или захотите предложить улучшения, создайте issue или pull request на GitHub. Ваш опыт поможет сделать библиотеку лучше до версии 1.0.

#эпидемиология#моделирование#Python#библиотека#SEIR
Al
Редакция Algolit

Пишем про алгоритмы, подготовку к собеседованиям и карьеру в IT — так, чтобы было понятно и полезно.

Хочешь закрепить знания на практике?

Решай задачи на Algolit — интерактивная платформа для обучения

Начать бесплатно →