-
Notifications
You must be signed in to change notification settings - Fork 128
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Estudar microdados do Ministério da Saúde #139
Comments
@turicas Eu tenho acompanhado e comparado os casos, com as informações do Gov. Federal e da SES-RS. |
@endersonmaia comentou sobre o formato dos registros: {
"source_id" : "NB73NHduwm",
"dataSintomas" : "2020-03-26T03:00:00.000Z",
"dataRegistro" : "2020-03-26T03:00:00.000Z",
"dataAtualizacao" : "2020-03-30T15:45:09.584Z",
"dataNascimento" : "1988-07-26T03:00:00.000Z",
"numeroNotificacao" : "272000027972",
"municipio" : "MACEIÓ",
"estado" : "ALAGOAS",
"municipioNotificacao" : "MACEIÓ",
"estadoNotificacao" : "ALAGOAS",
"cep" : "",
"comorbidades" : true,
"numeroCnes" : "2005689",
"confirmado" : false,
"sexo" : "Feminino",
"excluido" : false,
"fonte" : "esusve",
"geo" : {
"lon" : -35.720010699999996,
"lat" : -9.6358461
},
"idade" : 31,
"sinaisGravidade" : true,
"sinaisRespiratorios" : true
} Olhando rapidamente e comparando com os microdados das SES que já estudamos (#123), parece que:
|
https://opendatasus.saude.gov.br/dataset/casos-nacionais
|
Uma informação a descobrir também é ao que se refere esse ponto geográfico latitude e longitude. Se é o local de atendimento, de testagem, de internação ou de residência do paciente (espero que não), ou se é apenas um centroide do município ou algo assim. Segundo a documentação do dataset, as informações disponíveis são as da Ficha de Investigação Covid-19. Nas instruções de preenchimento da ficha há descrições para os campos que podem servir como uma espécie de dicionário de dados, mas nem na ficha e nem das instruções há o campo latitude e longitude. Suponho que essa informação deva ser provavelmente derivada do centroide do município ou CEP informados.
MetadadosOs metadados podem ser derivados das instruções presentes no documento "Instrutivo de preenchimento da ficha de notificação", embora os nomes dos campos não se alinhem perfeitamente. Outra diferença presente é que os campos que identificam a pessoa ou que comprometeriam a intimidade da pessoa, como o CPF, CNS, nome, endereço e telefone, é claro, estão suprimidos nos dados.
|
@augusto-herrmann o fiz o teste com o exemplo do comentário #139 (comment) ...
"numeroCnes" : "2005689",
"geo" : {
"lon" : -35.720010699999996,
"lat" : -9.6358461
},
... essa consulta fiz no CSV que baixei do site do CNES sqlite> SELECT CO_UNIDADE ,NO_FANTASIA, NO_LOGRADOURO, NO_BAIRRO, NU_LATITUDE, NU_LONGITUDE FROM tbEstabelecimento WHERE CO_CNES = '2005689';
CO_UNIDADE,NO_FANTASIA,NO_LOGRADOURO,NO_BAIRRO,NU_LATITUDE,NU_LONGITUDE
2704302005689,"UNIDADE DE SAUDE DA FAMILIA JOSE ARAUJO SILVA 5 DS","RUA PASTOR EURICO CALHEIROS",JACINTINHO,-9.6361538,-35.7206729 link para o cadastro no CNES http://cnes2.datasus.gov.br/cabecalho_reduzido.asp?VCod_Unidade=2704302005689 |
Fiz um código simples e capturei os dados do estado onde moro: from elasticsearch import Elasticsearch
from elasticsearch_dsl import Search
import pandas as pd
# criando conexão com ES
client = Elasticsearch(hosts='https://user-public-notificacoes:[email protected]')
# configurando a consulta
s = Search(using=client, index='desc-notificacoes-esusve-df')
# usando método scan para capturar todos os registros do index
df = pd.concat([pd.DataFrame(hit.to_dict(), index=[i]) for i, hit in enumerate(s.scan())]) Fiz esse código apenas para testar o acesso. Aqui na minha residência a carga dos dados do DF levou 2m e 25s, para ingerir 24980 registros, com as 23 colunas. Vou tentar calcular algumas análises descritivas e postar aqui mais tarde. Espero ter sido útil. |
@Xukinorris é importante baixar os dados todos, e trabalhar com eles localmente mas tb se possível, sugiro uma abordagem alternativa, é possível fazer as agregações direto na consulta ao ES, e já retornaria os dados agregados assim é possível usar um filtro como até tentei o endpoint |
Boa @endersonmaia , vou tentar dar uma estudada no ÉS, não é a minha “ferramenta padrão” de uso. Se conseguir algo retorno aqui... |
Os dados disponibilizados não podem ser utilizados para questões relacionadas à COVID-19. Há pouco tempo havia uma tabela exclusiva com informações detalhadas de casos de COVID-19. Essa tabela deixou de estar disponível nos últimos 15 dias. |
percebi que há diferenças entre os schemas dos Estados, nem todos os campos são preenchidos sempre segue script pra baixar o mapping do ES e um documento de exemplo #!/usr/bin/env bash
ESTADOS="ac al am ap az ba ce df es go ma mg ms mt pa pb pe pi pr rj rn ro rr rs sc se sp te to uf"
for uf in $ESTADOS; do
mkdir -p ./elastic/$uf
curl -sSL -XGET -H "Content-Type: application/json" "https://user-public-notificacoes:[email protected]/desc-notificacoes-esusve-$uf/_mapping" | jq . > ./elastic/$uf/mapping.json
curl -sSL -XPOST -H "Content-Type: application/json" "https://user-public-notificacoes:[email protected]/desc-notificacoes-esusve-$uf/_search" -d '{"query":{"match_all":{}},"size":1,"sort":[{"@timestamp":{"order":"desc"}}]}' | jq '.hits.hits[0]._source' > ./elastic/$uf/sample.json
done |
script de exemplo para baixar tudo #!/usr/bin/env bash
ESTADOS="ac al am ap az ba ce df es go ma mg ms mt pa pb pe pi pr rj rn ro rr rs sc se sp te to uf"
for uf in $ESTADOS; do
mkdir -p ./opendatasus/$uf
curl -sSL "https://s3-sa-east-1.amazonaws.com/ckan.saude.gov.br/dados-$uf.csv" -o ./opendatasus/$uf/dados-$uf-$(date +%Y%m%d%H%M%S)Z.csv
done csv sample
|
O @augusto-herrmann comentou que existem microdados disponíveis no CKAN do Ministério da Saúde. Precisamos verificar se:
Relacionado às seguintes issues:
IMPORTANTE: quando possível, publique trechos de código que foram desenvolvidos para fazer as análises/comparações.
The text was updated successfully, but these errors were encountered: