Skip to content

smkbarbosa/COVID-19

 
 

Repository files navigation

COVID-19

O objetivo deste repositório é iniciar uma força tarefa conjunta da comunidade científica e tecnológica a fim de organizar dados e criar modelos de previsão de infectados (e talvez outras métricas, entre elas demanda por leitos de internação) pelo COVID-19, focando no Brasil. O projeto é público e pode ser usado por todxs.

Toda e qualquer comunicação deve ser feita publicamente via GitHub Issues (fique a vontade para criar uma issue nova). Veja como contribuir com sua área de conhecimento (seja você profissional da saúde, computação, dados ou qualquer outra área) na seção Como contribuir?

No momento, as principais contribuições são o modelo SEIR-Bayes que pode ser visualizado interativamente com o Simulador; e os Dados disponíveis neste respositório

É importante entender que as análises estão em fase preliminar. Use a seu próprio risco.

Índice

Informações rápidas

Qual o modelo que acreditamos ser melhor?

SEIR-Bayes

Como posso usar o simulador online?

https://covid-simulator.3778.care/

Como entro no grupo oficial do Telegram?

Clique neste link: https://t.me/covid3778

Setup para rodar os modelos

  1. Instale python 3.6 ou superior;
  2. (Opcional) Crie um ambiente virtual;
  3. Instale as dependências com pip install -r requirements.txt

Modelos

Estes modelos são testes iniciais e não são bons exemplos de como se deve programar em Python.

Modelos Compartimentados

https://en.wikipedia.org/wiki/Compartmental_models_in_epidemiology#The_SEIR_model

Buscamos na literatura e temos as seguintes estimativas para os parâmetros desses modelos. Temos alguns artigos a serem estudados para melhorar essas estimativas.

Parâmetro Limite inferior Valor típico Limite superior Referências
Tempo de incubação (1/α) 4.1 5.2 dias 7.0 1, 2, 4
Número básico de reprodução (R0) 1.4 2.2 3.9 2, 3, 4
Período infeccioso médio (1/γ) ? 14 dias ? 1

SEIR-ODE

Este modelo deterministico separa a população em 4 compartimentos: Suscetíveis, Expostos, Infectados e Removidos; cujo equacionamento é dado por uma equação differencial ordinária.

Para rodar: python models/seir_ode.py (a forma de rodar provavelmente vai mudar no futuro)

[Codigo] [Equacionamento]

SEIR-SDE

Modelo similar ao SEIR-ODE, porem com dinâmica de transição de estados estabelecida por uma binomial.

Para rodar: python models/seir_sde.py (a forma de rodar provavelmente vai mudar no futuro)

[Codigo]

SEIR-Bayes

Modelo similar ao SEIR-SDE, porém com os parâmetros alpha, gamma e beta amostrados de uma distribuição à priori para cada rodada de simulação.

Para rodar: python models/seir_bayes.py (a forma de rodar provavelmente vai mudar no futuro), ou use https://covid-simulator.3778.care/

[Codigo]

Resultado

Este resultado é preliminar, favor ver issue 13. O objetivo era simular a cidade de São Paulo.

É importante entender que as análises estão em fase preliminar. Use a seu próprio risco.

Acessar resultados com Python

Função pra utilizar de forma fácil os dados.

seir_bayes_df_pop(
    R0__params: 'repr. rate upper and lower limits' = (2.5, 6.0),
    gamma_inv_params: 'removal rate upper and lower limits' = (7.0, 14.0),
    alpha_inv_params: 'incubation rate upper and lower limits' = (4.1, 7.0),
    fator_subr: 'subreporting factor, multiples I0 and E0' = 40.0,
    t_max: 'numer of days to run' = 30,
    runs: 'number of runs' = 1000,
    date: 'load SEIR(0) for this date' = 'latest',
)

Exemplo de uso:

from models.seir_bayes import seir_bayes_df_pop
sim = seir_bayes_df_pop() # voce pode mudar os parametros da simulacao
print(sim[0].keys()) # dict_keys(['uf', 'city', 'estimated_population', 'exposed_est', 
                     #            'cases', 'removed_est', 'results', 'error'])
S, E, I, R, t = sim[0]['results']

Cada matriz S, E, I ou R tem tamanho (t_max, runs)

Dados disponíveis neste respositório

  1. CSVs diários e por unidades da federação (disponívels em data/csv) (Fonte: Plataforma IVIS)

Simulador

Este simulador usa o Streamlit. No momento, ele permite simular o SEIR-Bayes variando os parâmetros. Estamos trabalhando para melhorar este simulador (veja as issues).

Hosteado pela 3778

Apenas clique aqui: https://covid-simulator.3778.care/

Com pip

  1. Faça o Setup para rodar os modelos
  2. Execute make launch

Com Docker

  1. Instale docker;
  2. Na raiz do projeto execute make image para construir a imagem;
  3. Em seguida, execute make covid-19 e aponte seu navegador para http://localhost:8501.

Como contribuir?

Nas seção de issues profissionais de diversas áreas podem ajudar. Veja a lista de exemplos abaixo sobre sugestões de como você pode ajudar com sua àrea de conhecimento, seja ela da saúde, ciências biológicas, exatas, computação, ou outras:

Clique aqui para ver uma lista de exemplos
  1. Profissionais da saúde/ciências biológicas podem levantar evidências de hipóteses não contempladas no algoritmo (ex: transmissão entre assintomáticos, ou no período assintomático
  2. Matemáticos podem sugerir novos métodos ou refinamentos ao algoritmo
  3. Economistas podem contribuir com refinamentos em impactos econômicos da disseminação do coronavirus
  4. Administradores hospitalares e profissionais da sáude podem sugerir calculos para provisionamento de recursos (material para UTIs, respiradores, máscaras, etc)
  5. Programadores com código
  6. Cientistas de dados com estimativas de parâmetros, e códigos etc

Fique a vontade para abrir uma issue nova, ou trabalhar em uma já existente. Discussões e sugestões, além de código e modelagem, são bem vindas.

Quero entender os modelos, mas não sei por onde começar!

Tipos de contribuições

Toda contribuição é bem vinda. Estamos gerenciando via GitHub Issues. Existem algumas categorias de contribuições:

  • modelagem - relacionados a modelagem matemática (discussões e implementações) dos modelos;
  • bug - problemas encontrados no código;
  • documentação;
  • dev - tudo que é relacionado a código (sem ser a modelagem ou bugs);
  • paper - artigo a ser analisado;
  • modelo: $NOME_DO_MODELO- para modelos específicos (por exemplo, modelo: SEIR-Bayes).

Recursos didáticos

Introdução aos modelos SEIR e variantes

Implementações

Efeito das intervenções públicas

Datasets Brasileiros

Referências

  1. Report of the WHO-China Joint Mission on Coronavirus Disease 2019 (COVID-19)
  2. Early Transmission Dynamics in Wuhan, China, of Novel Coronavirus–Infected Pneumonia
  3. Estimation of the reproductive number of novel coronavirus (COVID-19) and the probable outbreak size on the Diamond Princess cruise ship: A data-driven analysis
  4. MIDAS Online Portal for COVID-19 Modeling Research

About

Ciência de Dados aplicada a pandemia COVID-19.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Jupyter Notebook 89.5%
  • Python 8.4%
  • Shell 1.7%
  • Other 0.4%