Upload
daniela-petruzalek
View
354
Download
9
Embed Size (px)
Citation preview
Copyright © 2016, Daniela Petruzalek <[email protected]>
read.dbcUm pacote para importação dos dados do DATASUS na linguagem R
Daniela PetruzalekConsultora de Informática em Saú[email protected]+55 (42) 99116-1104
Copyright © 2016, Daniela Petruzalek <[email protected]> 2
Introdução• A disponibilização de informações públicas de saúde é fundamental para a
tomada de decisões gerenciais, fomentar o ensino e a pesquisa em saúde, e promover o controle social do Sistema Único de Saúde.• O DATASUS é o agente responsável pela disponibilização e manutenção das
bases de dados do SUS e da ANS. Algumas bases de dados possuem décadas de informação.– Ex.: Sistema de Informação de Mortalidade (SIM) possui dados desde 1979.
• Grande parte destes dados hoje estão disponíveis no formato DBC, uma versão do formato DBF desenvolvido especificamente para a finalidade de publicação de dados de saúde pelo DATASUS.
Copyright © 2016, Daniela Petruzalek <[email protected]> 3
Introdução• O formato DBC, para ser analisado, depende do uso da ferramenta TabWin
para análise ou conversão para outros formatos, o que impõe algumas limitações:–O TabWin está apenas disponível em Windows–O TabWin roda localmente na máquina do usuário–O TabWin requer treinamento específico
• Para superar estas limitações, foi desenvolvido o pacote read.dbc para leitura do formato de arquivo DBC na linguagem R
Copyright © 2016, Daniela Petruzalek <[email protected]> 4
Por Que a Linguagem R?• O R é uma linguagem desenhada para a Estatística– Ambiente (“environment”) no qual técnicas estatísticas são implementadas
• O R dispõe de uma ampla gama de ferramentas estatísticas (modelagem linear e não-linear, testes estatísticos clássicos, classificação, agrupamentos, aprendizado de máquina, ...) e técnicas gráficas– Expansível através de funções e pacotes (“packages”) como uma linguagem de
programação tradicional
• É uma linguagem Open Source e multiplataforma (Windows, Linux, UNIX)– Comunidade forte de desenvolvedores ao redor do mundo– Biblioteca central de pacotes: CRAN (The Comprehensible R Archive Network)
Copyright © 2016, Daniela Petruzalek <[email protected]> 5
Metodologia• Desafios: o TabWin é software livre, mas não é código aberto• Houve um esforço de “engenharia reversa” do formato do arquivo–O arquivo é um DBF compactado, com o header preservado e empregando um
algoritmo de compactação da empresa PKWare– Código fonte em C, baseado em outro projeto open source:
https://github.com/eaglebh/blast-dbf (Pablo Marcondes Fonseca, UFMG)
• Criou-se um wrapper para o código fonte em C para a linguagem R• O produto deste trabalho foi encapsulado na forma de biblioteca e
publicado na CRAN– Extenso processo de validação– Garantia de estabilidade em todos os ambientes suportados pelo R
Copyright © 2016, Daniela Petruzalek <[email protected]> 6
Resultados• Pacote read.dbc, hoje na versão 1.0.5, com 2 funções:– dbc2dbf: converte arquivos DBC em DBF no sistema operacional, mas não abre os
arquivos– read.dbc: lê arquivo DBC para um data.frame, sem necessidade de conversão prévia
(uma conversão implícita cria um arquivo temporário)
• Disponível na CRAN– Instalável pela função install.packages– Funcionamento garantido em todos os ambientes R acima da versão 3.3.0
Copyright © 2016, Daniela Petruzalek <[email protected]> 7
Instalação
Copyright © 2016, Daniela Petruzalek <[email protected]> 8
Exemplo de Uso
Copyright © 2016, Daniela Petruzalek <[email protected]> 9
Conclusões• O pacote read.dbc contribui para a democratização do acesso aos dados do
DATASUS, flexibilizando as tecnologias empregadas na análise de dados.• Ademais, o pacote facilita o processamento em massa de informações, pois
o R é uma linguagem amplamente suportada, inclusive por grandes players do segmento de tecnologia: Microsoft, Oracle, IBM, Tibco, Teradata, etc.• Finalmente, sua natureza open source permite que a própria comunidade
proponha melhorias e auxilie na correção de erros, promovendo a participação social no SUS
Copyright © 2016, Daniela Petruzalek <[email protected]> 10
Agradecimentos• Thiago Augusto Hernandes Rocha• Pablo Marcondes Fonseca
Copyright © 2016, Daniela Petruzalek <[email protected]> 11
Próximos Passos• Projeto pacote ‘datasus’ para R (em
andamento)– https://github.com/danicat/datasus
• Conversão do pacote read.dbc para Python• Automatização do cálculo de
indicadores de saúde baseados em dados vitais.
Copyright © 2016, Daniela Petruzalek <[email protected]> 13
Obrigada!!!
Daniela PetruzalekConsultora de Informática em Saú[email protected]+55 (42) 99116-1104
http://www.linkedin.com/in/petruzalekhttp://www.github.com/danicathttp://www.twitter.com/danicat83