Skip to content

Repositório com o projeto final do Bootcamp de Data Science da Alura Cursos Online.

License

Notifications You must be signed in to change notification settings

EltonGS/covid-19_previsao_leito_UTI

Repository files navigation

Previsão do uso de leitos de UTI por pacientes com Covid-19

Sumário

  1. Apresentação
  2. Introdução
  3. Estrutura do Projeto
  4. Informações sobre os dados
  5. Objetivos
  6. Conclusão
  7. Agradecimentos
  8. Referências utilizadas
  9. Contato

Apresentação

Olá a todos!

Seja bem vindo a esse projeto de Ciência de Dados. Contando um pouco sobre mim e o que me levou a conhecer e me interessar por essa área:

Em meados de março de 2021 a empresa onde trabalho disponibilizou uma série de cursos para que os funcionários estivessem cientes das tecnologias e temas que são extremamente importantes para o crescimentos dos clientes. Um desses cursos era sobre Dados e como eles são utilizados para impulsionar o crescimento de empresas, as tomadas de decisões, e como a utilização de dados vem aumentando e ainda há muito a ser explorado.

A maneira como os dados podem ser utilizados para extrair informações valiosas sobre os mais diferentes temas me chamou a atenção e a partir dali comecei a pesquisar mais sobre isso, buscando como é essa área de atuação e o que é necessário para fazer parte dela.

Por um golpe do destino, em abril de 2021 a Alura abriu inscrição para a 3ª Imersão de Dados. Um curso intensivo de 1 semana mostrando os principais pontos de um projeto de Ciência de Dados. Ali eu não tinha conhecimento algum sobre a linguagem de programação Python e suas bibliotecas utilizadas ou sobre os modelos matemáticos e estatísticos mencionados durante as aulas, mas a maneira como os dados foram manipulados e analisados me interessaram muito.

Logo após a imersão foi aberta inscrição para o Bootcamp de Data Sciente Aplicada. Uma experiência de 12 semanas aprendendo sobre Python, as bibliotecas utilizadas para manipulação e visualização dos dados, análises de séries temporais e modelos de Machine Learning.

Esse é o projeto final desse Bootcamp de Data Science Aplicada que foi disponilizado pela Alura Cursos Online. Nele serão aplicados os conhecimentos adquiridos nas últimas 12 semanas:

  • Tratamento dos dados;
  • Análise Exploratória e visualização dos dados;
  • Criação de Modelo de Machine Learning;

Espero que esse projeto possa te auxiliar de alguma maneira, ou pelo menos despertar o interesse em conhecer mais sobre essa área.

Introdução

Em dezembro de 2019 foi relatado o primeiro caso oficial de Covid-19 causado pelo vírus SARS-CoV-2. No Brasil, em 26 de fevereiro de 2020 foi registrado o primeiro caso de Covid-19. Essa nova doença causou um estresse enorme sobre os sistemas de saúde dos países por não existir um tratamento com eficácia cientificamente comprovada. Para um parcela das pessoas infectadas os sintomas evoluem e se tornam severos ou críticos e assim necessitam de maiores cuidados. Esses pacientes precisam ser transferidos para a UTI e receber oxigênio.

Com o movimento desses pacientes para a UTI, ocorreu um colapso do sistema de saúde de diversos países ao redor do mundo, incluindo o Brasil.

Medidas foram tomadas para aumentar o número de leitos de UTI nos hospitais brasileiros, e também hospitais de campanha foram criados para atender um número maior de pacientes.

Para utilizar os leitos de UTI da melhor maneira possível, o Hospital Sírio-Libanês disponibilizou uma base de dados no Kaggle (pode ser verificada aqui) para incentivar a criação de Modelo de Machine Learning (Aprendizado de Máquina) que possam prever se um paciente necessitará ou não de um leito de UTI com base nos exames médicos realizados quando o paciente está no hospital.

Dessa maneira os pacientes que necessitam de um leito de UTI podem ser acomodados rapidamente em um leito livre, ou que possa ser buscado um leito em outro local, e os pacientes que não necessitarão de um leito podem ser acompanhados remotamente.

Esse projeto explorará a base de dados fornecida pelo Hospital Sírio-Libanês e criará modelos de Machine Learning que façam a previsão da necessidade, ou não, de um leito de UTI.

Estrutura do Projeto

Esse projeto está dividido em 3 notebooks, conforme a descrição a seguir:

Foi também criada uma apresentação de slides com os pontos principais do projeto que pode ser acessada AQUI e um arquivo PDF com os slides que pode ser visto AQUI.

Informações sobre os dados

O Hospital Sírio Libanês compartilhou algumas informações sobre os dados:

  • A coluna ICU é a que deve ser prevista utilizando um modelo de Machine Learning.

  • A partir do momento que o valor na coluna ICU é 1 os dados não devem ser utilizados para o modelo de machine learning pois não é possível dizer se os exames foram feitos antes ou depois do paciente ser admitido na UTI.

  • Os dados são anonimizados e foram coletados nas unidades de São Paulo e Brasília. Os dados foram anonimizados utilizando as melhores práticas internacionais.

  • Os dados foram tratados e colocados em escala utilizando o método Min Max Scaler para estarem entre -1 e 1.

  • Os dados disponíveis nessa base são:

  • Informação demográfica do paciente (03 colunas);
  • Agrupamento de doenças já existentes no paciente (09 colunas);
  • Resultados de exame de sangue (36 colunas);
  • Sinais vitais (06 colunas);

A equipe do Sírio Libanês também adicionou colunas com valores matemáticos e estatistícos dos exames de sangue e sinais vitais. Estes estão representados nas colunas com o nomes terminando em MEAN (média), MEDIAN (mediana), MAX (valor máximo), MIN (valor mínimo), DIFF (diferença entre o MAX e o MIN) e o DIFF_REL (A razão entre o DIFF e o MEDIAN).

Dados Ausentes - Os dados da tabela são provenientes de exames que são realizados com frequências diferentes. Por exemplo, medição dos sinais vitais são feitas a cada hora e exames laboratoriais de sangue são feitos semanalmente.

É razoável assumir que se os dados estão faltando para uma janela de tempo para um paciente é porque o paciente se manteve estável e apresentou resultados similares aos que já estavam registrados nas janelas anteriores ou posteriores. Assim os valores das janelas vizinhas podem ser utilizados para preencher os dados ausentes.

Objetivos

Os objetivos indicados pelo Hospital Sírio Libanês são:

Objetivo 1 - Prever a admissão à UTI de pacientes com Covid-19.

Objetivo 2 - Prever a NÃO admissão à UTI de pacientes com Covid-19.

Conclusão

Analisando a base de dados fornecida pelo Hospital Sírio Libanês foi possível identificar os seguintes fatores:

  • A base de dados possui informações completas de 384 pacientes;
  • 180 pacientes são idosos e 204 pacientes são não idosos;

A idade dos pacientes se mostra um fator importante para a admissão a UTI:

  • Entre os pacientes idosos 66% (119) necessitou de um leito de UTI e 19 pacientes foram admitidos diretamente na UTI;
  • Entre os pacientes não idosos 37% (76) necessitou de um leito de UTI;

Para realizar a previsão da necessidade de um leito de UTI foram testados 4 modelos de Machine Learning.

Os modelos de Machine Learning selecionados para esse projeto foram:

  1. Random Forest Classifier
  2. Logistic Regression
  3. SVC
  4. LinearSVC

O modelo com a melhor performance nas previsões foi o Random Forest Classifier, seguido de perto por LinearSVC e Logistic Regression.

O modelo Random Forest Classifier conseguiu as seguintes estatísticas:

  • prever corretamente 64% dos pacientes que necessitaram de um leito de UTI;
  • prever corretamente 84% dos pacientes que NÃO necessitaram de um leito de UTI;
  • o AUC Médio obtido através da validação cruzada foi 0.80;

Agradecimentos

Esse projeto encerra o Bootcamp de Data Science Aplicada ministrado pela Alura Cursos Online, e com certeza INICIA minha jornada nesse mundo da Ciência de Dados.

Gostaria de agradecer a Alura pelas ótimas aulas e projetos, aos instrutores Guilherme Silveira, Thiago Gonçalves, Karol Penteado e Allan Spadini. Sempre dispostos a compartilhar seu conhecimento e explicar os conteúdos da melhor maneira possível.

Também agradecer ao Scuba Team e ao pessoal do Student Experience, sempre ajudando a todos no Discord.

E também agradecer a comunidade que se formou no Discord entre as pessoas realizando o Bootcamp, um ajudando ao outro, compartilhando ideias, conhecimento, dicas, memes...

Referências utilizadas

  1. Página do Kaggle com informações sobre a base de dados

  2. Text classification with extremely small datasets

  3. 5 Feature Selection Method From SciKit Learn You Should Know

  4. Como Selecionar As Melhores Features Para Seu Modelo de Machine Learning

  5. Machine Learning Map

  6. Primeiro caso de Covid-19 pode ter atingindo a Chine em outubro

  7. Evolução dos Sintomas do Covid-19

  8. Covid Impact to Global Healthcare

  9. Observatório Covid-19 aponta maior colapso sanitário e hospitalar da história do Brasil

  10. Primeiro caso Covid-19 no Brasil

  11. Overfitting e Underfitting em Machine Learning

  12. WHO delivers advice and support for older people during Covid-19

  13. Machine Learning in Healthcare

  14. Machine Learning

  15. Hiperparameter Tuning

  16. SKLearn Model Selection - RandomizedSearchCV

  17. Entenda o que é AUC e ROC nos modelos de Machine Learning

  18. Understanding Confusion Matrix

  19. Understanding a Classification Report For Your Machine Learning Model

  20. Understanding AUC ROC Curve

  21. Regressão Logística

  22. SciKit Learn - RandomForestClassifier

  23. SciKit Learn - Logistic Regression

  24. SciKit Learn - SVC

  25. SciKit Learn - LinearSVC

Contato

Caso deseje entrar em contato com sugestões, dicas ou somente para conversar sobre Ciência de Dados:

LinkedIn

About

Repositório com o projeto final do Bootcamp de Data Science da Alura Cursos Online.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published