Coder Social home page Coder Social logo

impulsogov / farolcovid Goto Github PK

View Code? Open in Web Editor NEW
54.0 4.0 17.0 11.62 MB

🚦🏥. Ferramenta de monitoramento do risco de colapso no sistema de saúde em municípios brasileiros com a Covid-19 • Monitoring tool & simulation of the risk of collapse in Brazilian municipalities' health system due to Covid-19

Home Page: https://farolcovid.coronacidades.org/

License: MIT License

Python 27.52% Shell 0.04% CSS 5.63% Makefile 0.15% Dockerfile 0.12% Jupyter Notebook 63.83% HTML 2.39% JavaScript 0.33%
covid-19 data-science data streamlit epidemiology social-good statistics hacktoberfest

farolcovid's Issues

Incorporar Rt na simulação de intervenções

Contexto

Temos uma métrica para a disseminação da doença no município/UF atual!

O que fazer

  • Repensar as estratégias de intervenção apresentadas: dado o crescimento atual, o gestor pode simular continuar / aumentar / diminuir a a taxa de contágio (Rt +/- 0.5)

Estruturar API do modelo

Proposta:

Model

A funcão model é responsável por rodar o model epidemiológico a partir de parâmetros populacionais e da doença.

def model(population_params, 
       diseases_params,
       n_days
):
""" Run X epidemiological model

Params
--------
population_params: dict
     Population parameters:
          - N: region population
          - E: exposed
          - I_1: infected mild
          - I_2: infected serious
          - I_3: infected critical
          - R: recovered
          - D: deaths

diseases_params: dict
       Diseases parameters:
           - ...

n_days: int
       Number of days to model

Return
-------
pd.DataFrame
        Evolution of population parameters.
"""

Prepare

A funcão prepare tem métodos para estimar parâmetros populacionais que não são explítos. Por exemplo, I é o número de infectados, que é um número explícito. I_2 pode ser estimado usando 12.5% de I.

def prepare(population_params, config):
""" Estimate not explicity population parameters

Params
--------

population_param: dict
       Explicit population parameters:
                - N: population
                - I: infected
                - R: recovered
                - D: deaths

config: dict
        General configuration files with rules to estimate implicit parameters

Returns
--------
dict
       Explicit and implicit population parameters ready to be applied in the `model` function
"""

Estruturar simulador

O simulador deve organizar quando cada cenário deve ser ativado.

Sudo code:

from <model_name> import prepare_population, prepare_params, model

def prepare_sequential_scenario(user_input, config):
""" Organizes scenarios in a list of tuples (n_days, R0).

The user_input data should overwrite the config setup by default.

Return
-------
list of tuples
     of n_days and R0
"""

def sequential_simulation(user_input, explicit_population_params, config):

      population_params = prepare_population(explicit_population_params)
      scenarios = prepare_scenarios(user_input, config)

      result = pd.DataFrame()
      for n_days, R0 in scenarios:
     
            result_temp = model(
                    population_params, 
                    prepare_model(model_params, R0), 
                    n_days)

             result = pd.concat([result, result_temp])

       return result

Ajustes nos cards da simulação

  • Melhorar estimativa do card para quando lower-bound não cruza a linha capacidade mas o upper cruza (atual: "mais de 90 dias")
  • Adicionar texto no card para o caso no qual já estourou capacidade
  • Automatizar mensagem de whatsapp para caso onde "dá ruim" em zero dias

Criar métricas de avaliação do modelo

  • Como verificar o gap entre a simulação e dados observados?
  • Qual o período para verificação vamos considerar? últimos 7/15 dias

Premissas:

  • Fitar pelo número de mortes: assumimos não ter subnotificação nessa classe

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.