O microdatasus baixa, lê e prepara microdados dos Sistemas de Informação em Saúde publicados pelo DataSUS. O pacote trabalha diretamente com arquivos DBC, seleciona os arquivos efetivamente disponíveis no servidor e oferece funções específicas para recodificar variáveis de SIM, SINASC, SIH, SIA, CNES e SINAN.
O pacote resolve a parte operacional do acesso aos dados. Para compreender a unidade de análise, a cobertura, os fluxos de produção e os cuidados de interpretação de cada sistema, consulte o livro Sistemas de Informação em Saúde no Brasil.
O que o pacote oferece
-
fetch_datasus()localiza, baixa e combina microdados publicados pelo DataSUS. -
read_dbc()lê um arquivo DBC já disponível no computador. - As funções
process_*()recodificam campos conhecidos, normalizam textos e, quando implementado, acrescentam informações municipais ou tabelas auxiliares. -
fetch_cadger()efetch_sigtab()obtêm tabelas auxiliares atuais de CNES e SIA.
Os downloads são sequenciais, usam arquivos temporários e fazem novas tentativas em falhas transitórias. Quando stop_on_error = FALSE, os arquivos válidos podem ser retornados mesmo que parte da solicitação falhe.
Instalação
Instale a versão estável publicada no CRAN:
install.packages("microdatasus")Ou instale a versão de desenvolvimento:
# install.packages("remotes")
remotes::install_github("rfsaldanha/microdatasus", ref = "dev")A leitura de DBC é interna ao pacote e não depende mais de read.dbc. A implementação foi adaptada do pacote healthbR.
No Windows, a instalação pelo GitHub requer uma versão do Rtools compatível com o R instalado. A versão binária distribuída pelo CRAN não requer ferramentas de compilação.
Primeiro download
O fluxo mais comum tem duas etapas: baixar os arquivos e aplicar o processador do sistema.
library(microdatasus)
sim_raw <- fetch_datasus(
year_start = 2022,
year_end = 2022,
uf = "AC",
information_system = "SIM-DO",
vars = c("CODMUNRES", "DTOBITO", "CAUSABAS"),
track_source = TRUE
)
sim <- process_sim(sim_raw)Os processadores retornam um tibble com colunas de texto após a normalização Unicode. Converta explicitamente os campos necessários à análise:
sim$DTOBITO <- as.Date(sim$DTOBITO)Os anos, meses e UFs solicitados identificam as partições publicadas pelo DataSUS. A data e o local analíticos devem ser escolhidos nas variáveis do registro. O capítulo sobre o SIM, por exemplo, distingue residência, ocorrência e outras dimensões territoriais e temporais do óbito.
Sistemas mensais, como SIH, SIA e CNES, exigem os meses inicial e final:
sih_raw <- fetch_datasus(
year_start = 2023,
month_start = 1,
year_end = 2023,
month_end = 2,
uf = c("AC", "RO"),
information_system = "SIH-RD",
timeout = 600
)
sih <- process_sih(sih_raw)Sistemas suportados
| Sistema | Periodicidade dos arquivos | Download | Processamento | Livro de SIS |
|---|---|---|---|---|
| SIM | Anual |
SIM-DO, SIM-DOFET, SIM-DOEXT, SIM-DOINF, SIM-DOMAT
|
process_sim() |
SIM |
| SINASC | Anual | SINASC |
process_sinasc() |
SINASC |
| SIH | Mensal |
SIH-RD, SIH-RJ, SIH-SP, SIH-ER
|
process_sih() para SIH-RD
|
SIH |
| SIA | Mensal | Doze layouts SIA-*
|
process_sia() para SIA-PA
|
SIA |
| CNES | Mensal | Treze layouts CNES-*
|
process_cnes() para CNES-ST e CNES-PF
|
CNES |
| SINAN | Anual e nacional | Dengue, chikungunya, Zika, malária, Chagas, leishmanioses e leptospirose | Processadores específicos, exceto leptospirose | SINAN |
A lista completa dos identificadores está na referência de fetch_datasus().
Controle do download
Algumas opções úteis de fetch_datasus():
-
varslimita as colunas lidas e reduz o uso de memória. -
track_source = TRUEacrescenta o nome do DBC de origem de cada registro. -
timeoutcontrola o limite de cada operação de rede, sem alterar opções globais do R. - o nome do arquivo, o progresso da transferência, a leitura e o resumo final são exibidos; use
quiet = TRUEpara ocultar o progresso e todas as mensagens de status. -
stop_on_error = FALSEpreserva sucessos parciais;TRUEinterrompe a solicitação na primeira falha. -
ufaceita uma UF, várias UFs ou"all". Arquivos nacionais, como os do SINAN, ignoram esse argumento com um alerta.
Consulte o artigo Download e rastreabilidade para exemplos de todas essas opções.
Arquivos DBC locais
Use read_dbc() quando o arquivo já estiver no computador:
Como citar
Ao utilizar o pacote, cite:
SALDANHA, Raphael de Freitas; BASTOS, Ronaldo Rocha; BARCELLOS, Christovam. Microdatasus: pacote para download e pré-processamento de microdados do Departamento de Informática do SUS (DATASUS). Cadernos de Saúde Pública, v. 35, n. 9, e00032419, 2019. https://doi.org/10.1590/0102-311x00032419.
Quando o livro apoiar a descrição ou a interpretação dos sistemas, cite também:
SALDANHA, Raphael de Freitas. Sistemas de Informação em Saúde no Brasil. Rio de Janeiro: Edição do autor, 2026. ISBN 978-65-01-37841-1. https://rfsaldanha.github.io/sis/.
Agradecimentos
O suporte a DBC foi construído a partir de contribuições de código aberto dos projetos read.dbc, de Daniela Petruzalek, e healthbR, de Sidney Bissoli.
Dúvidas e sugestões
Crie uma issue ou envie um e-mail para raphael.saldanha@fiocruz.br.