Guia de utilização do pacote microdatasus

Author

Romulo Barros de Freitas

Por meio desse material, você será capaz de acessar e extrair dados do repositório do Datasus por meio do pacote microdatasus do software R. Para uma melhor experiência, é recomendado baixar o R base, a IDE RStudio e a extensão RTools. Se você não tiver nada disso instalado, você pode seguir o seguinte tutorial no youtube ou procurar por semelhantes:

Nota: Uma das melhores maneiras de entender determinada ferramenta ou função é acessando sua documentação. A documentação do pacote pode ser acessada pelo Github do criador:

1 Pacotes necessários

Inicialmente, para realizar o acesso e extração dos dados, será necessário instalar os seguintes pacotes no R. Eles já estão presentes no repositório oficial de pacotes de R, portanto, podemos instalar por meio da funação install.packages():

install.packages("remotes")
install.packages("tidyverse")
install.packages("data.table")
install.packages("devtools")
  • O pacote remotes possibilita a instalação de pacotes alocados no git e github;

  • O pacote tidyverse possibilita a manipulação, tratamento e visualização de dados por meio dos seus “subpacotes”;

  • O pacote data.table permite salvar os dados baixados em uma planilha csv rapidamente.

Em seguida, após a instalação, é necessário “chamar” os pacotes para o seu ambiente de trabalho, usamos a fução library() para isso:

library("remotes")
library("tidyverse")
library("data.table")

Nota: Por ser uma ambiente de código aberto, qualquer usuário pode desenvolver e disponibilizar pacotes para serem utilizados no R. Entretanto, nem sempre é possível que o pacote criado seja hospedado no repositório oficial de pacotes do R (Cran). Nesse sentido, é necessário ter instalado o Rtools.

Recentemente, o pacote microdatasus foi removido do repositório oficial, entretando, é possível baixá-lo. Para a instalação do pacote microdatasus, é necessário usar uma função do pacote remotes, já instalado anteriormente. Por meio da função install_github(), conseguimos, então, baixar o pacote:

Observação: Também, é necessário instalar o pacote read.dbc:

devtools::install_github("danicat/read.dbc", force = T)

Após seguir todos os passos anteriores, podemos então, instalar o pacote microdatasus:

remotes::install_github("rfsaldanha/microdatasus", force = TRUE)

Nota: a sintaxe pacote::funcao(argumentos) indica que estamos acessando do pacote remotes a função install_github().

Após a instalação do pacote, é necessário chamá-lo para o nosso ambiente de trabalho:

library(microdatasus)

Se tudo ocorrer corretamente, seu ambiente de trabalho no RStudio estará pronto para extrair os dados do datasus.

Basicamente, você irá precisar de duas funções principais, uma para extrair os dados e uma para processar os dados baixados.

  • fetch_datasus() é a função que é utilizada para baixar os dados.

Essa função possui os seguintes argumentos:

  • Clique para saber mais sobre como utilizar a função

  • Dependendo do sistema que você está acessando para extrair os dados, a função de processamento pode variar, se os dados forem do SINAN-DENGUE, a função para processamento será process_sinan_dengue(), se os dados forem oriundos do SINAN-CHIKUNGUNYA, a função para processamento seria process_sinan_chikungunya().

Dependendo da filtragem de dados necessária, por exemplo, se quisermos baixar dados da dengue de um período muito longo, será necessário um suporte computacional mais robusto. Uma alternativa seria utilizar ambiente do R no google collab.

Dessa maneira, por motivos de otimização da extração do volume de dados, recomenda-se usar o R no ambiente do Google Colab.

Dica: sempre que tiver alguma dúvida sobre alguma função no R, acione o , ele lhe dará informações ou até mesmo toda a documentação da função ou do pacote com exemplos. Para darmos um help, basta colocar um sinal de interrogação antes da função que temos dúvida de como utilizá-la.

?fetch_datasus

A seguir, estão os exemplos dos códigos que foram utilizados:

1.1 Dengue

# Baixando os dados:

df_dengue_2021 = fetch_datasus(year_start = 2021, 
                               year_end = 2021, 
                               information_system = "SINAN-DENGUE")
                               
# Processando os dados:

df_process_dengue_2021 = process_sinan_dengue(df_dengue_2021)


# Salvando os dados baixados:

data.table::fwrite(df_process_dengue_2021, "df_dengue_21.csv", 
                   row.names = FALSE)

Nota: No exemplo acima, foram baixados, processados e salvos os dados referentes aos casos de dengue do ano de 2022. Para uma melhor filtragem, utilize os parâmetros da função fetch_datasus.

Nota: Na presença de um suporte computacional mais robusto, uma opção de cógigo, para baixar os dados da dengue do período de 2018 a 2024, por exemplo, seria:

# Baixando os dados:

df_dengue_18_14 = fetch_datasus(year_start = 2018, 
                               year_end = 2024, 
                               information_system = "SINAN-DENGUE")
                               
# Processando os dados:

df_process_dengue_18_24 = process_sinan_dengue(df_dengue_18_24)


# Salvando os dados baixados:

data.table::fwrite(df_process_dengue_18_24, "df_dengue_18_24.csv", 
                   row.names = FALSE)

1.2 Zica

# Baixando os dados:
df_zica_2023 = fetch_datasus(year_start = 2023,
                             month_start = 1,
                             year_end = 2023, 
                             month_end = 12, 
                             information_system = "SINAN-ZICA")

# Processando os dados:

df_process_zica = process_sinan_zica(df_zica_2023)

# Salvando os dados baixados:

data.table::fwrite(df_process_zica, "df_zica_23.csv", 
                   row.names = FALSE)

1.3 Chikungunya

# Baixando os dados:

df_chik_2022 = fetch_datasus(year_start = 2022,
                             month_start = 1, year_end = 
                               2022, month_end = 12, 
                             information_system = "SINAN-CHIKUNGUNYA")
                               
# Processando os dados:

df_process_chik_2022 = process_sinan_chikungunya(df_chik_2022)


# Salvando os dados baixados:

data.table::fwrite(df_process_chik_2022, "df_chik_22.csv", 
                   row.names = FALSE)

Nota: A função colnames() nos retorna o nome das colunas do nosso banco de dados, é uma maneira rápida de acessar as variáveis que temos na nossa base.

colnames(df_process_dengue_2021)

3 Referências

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). Cad. Saúde Pública, Rio de Janeiro , v. 35, n. 9, e00032419, 2019. Available from http://ref.scielo.org/dhcq3y.