The SIH (Sistema de Informacoes Hospitalares) records all hospital admissions financed by the Brazilian public health system (SUS) through the Autorizacao de Internacao Hospitalar (AIH). It is managed by the Ministry of Health through DATASUS.
| Feature | Details |
|---|---|
| Coverage | Per state (UF), all 27 states |
| Years | 2008–2024 |
| Granularity | Monthly (one file per UF/month) |
| Unit | One row per hospital admission (AIH) |
| Format | .dbc files from DATASUS FTP |
Use CID-10 code prefixes to filter the principal diagnosis:
| Variable | Description |
|---|---|
| DIAG_PRINC | Principal diagnosis (CID-10) |
| DT_INTER | Admission date |
| DT_SAIDA | Discharge date |
| SEXO | Sex (0=Unknown, 1=Male, 3=Female) |
| NASC | Date of birth |
| MORTE | Hospital death (0=No, 1=Yes) |
| MUNIC_RES | Municipality of residence (IBGE code) |
| MUNIC_MOV | Municipality of hospitalization |
| VAL_TOT | Total AIH value (R$) |
| DIAS_PERM | Length of stay (days) |
| PROC_REA | Procedure performed (SIGTAP code) |
| UTI_MES_TO | ICU days |
Note: Sex codes in SIH differ from SIM/SINASC (0=Unknown, 1=Male, 3=Female).
admissions <- sih_data(year = 2022, uf = "SP", month = 1)
costs <- admissions |>
mutate(
chapter = substr(DIAG_PRINC, 1, 1),
cost = as.numeric(VAL_TOT)
) |>
group_by(chapter) |>
summarise(
admissions = n(),
total_cost = sum(cost, na.rm = TRUE),
mean_cost = mean(cost, na.rm = TRUE)
) |>
arrange(desc(total_cost))datasus.saude.gov.br)wiki.saude.gov.br/sigtap)