Skip to content

Instantly share code, notes, and snippets.

@fernandobarbalho
Created January 20, 2026 18:46
Show Gist options
  • Select an option

  • Save fernandobarbalho/b1e84a18f8fbf08ff2b0de0686c92b2d to your computer and use it in GitHub Desktop.

Select an option

Save fernandobarbalho/b1e84a18f8fbf08ff2b0de0686c92b2d to your computer and use it in GitHub Desktop.
Script para gerar arquivos com dados anuais de internação hospitalar do sus
library(microdatasus)
library(tidyverse)
estados<- c("AC","AL","AM", "AP", "BA","CE","DF","ES","GO","MA","MT","MS","MG","PA","PB", "PR","PE","PI","RJ","RS","RN","RO","RR","SC","SP","SE","TO")
download.file("ftp://ftp.datasus.gov.br/dissemin/publicos/SIHSUS/200801_/Doc/IT_SIHSUS_1603.pdf", destfile = "documentacao.pdf", mode= "wb", method = "libcurl" )
dados_sih_1<-
map_dfr(estados[1:13],function(estado){
res<- try(microdatasus::fetch_datasus(year_start = 2024,
year_end = 2024,
uf = estado,
month_start = 1,
month_end = 12,
information_system = "SIH-RD"))
if (inherits(res, "try-error")){
return()
}
microdatasus::process_sih(res)
})
dados_sih_1<- janitor::clean_names(dados_sih_1)
saveRDS(dados_sih_1,file = "dados_sih_1.RDS")
dados_sih_2<-
map_dfr(estados[14:18],function(estado){
res<- try(microdatasus::fetch_datasus(year_start = 2024,
year_end = 2024,
uf = estado,
month_start = 1,
month_end = 12,
information_system = "SIH-RD"))
if (inherits(res, "try-error")){
return()
}
microdatasus::process_sih(res)
})
dados_sih_2<- janitor::clean_names(dados_sih_2)
saveRDS(dados_sih_2,file = "dados_sih_2.RDS")
dados_sih_3<-
map_dfr(estados[c(19:24,26:27)],function(estado){
res<- try(microdatasus::fetch_datasus(year_start = 2024,
year_end = 2024,
uf = estado,
month_start = 1,
month_end = 12,
information_system = "SIH-RD"))
if (inherits(res, "try-error")){
return()
}
microdatasus::process_sih(res)
})
dados_sih_3<- janitor::clean_names(dados_sih_3)
saveRDS(dados_sih_3,file = "dados_sih_3.RDS")
###Demanda específica de SP ebtre janeiro e março de 2024
estados<- c("SP")
dados_sih_2024_janeiro_marco_sp<-
map_dfr(estados,function(estado){
print(estado)
res<- try(microdatasus::fetch_datasus(year_start = 2024,
year_end = 2024,
uf = estado,
month_start = 1,
month_end = 3,
information_system = "SIH-RD"))
if (inherits(res, "try-error")){
return()
}
microdatasus::process_sih(res)
})
dados_sih_2024_janeiro_marco_sp <- janitor::clean_names(dados_sih_2024_janeiro_marco_sp)
#Toda da demanda de SP em 2024 e 2025 nos meses entre abril e novembro
dados_sih_2024_abril_novembro_sp<-
map_dfr(estados,function(estado){
print(estado)
res<- try(microdatasus::fetch_datasus(year_start = 2024,
year_end = 2024,
uf = estado,
month_start = 4,
month_end = 11,
information_system = "SIH-RD"))
if (inherits(res, "try-error")){
return()
}
microdatasus::process_sih(res)
})
dados_sih_2024_abril_novembro_sp <- janitor::clean_names(dados_sih_2024_abril_novembro_sp)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment