library(tidyverse)
library(geobr)
library(roadtrafficdeaths)
library(showtext)
library(patchwork)
library(here)
library(gt)
font_add_google("Roboto Mono", "roboto")
showtext_auto()
theme_set(theme_bw(base_family = "roboto", base_size = 8))
Óbitos no trânsito brasileiro em 2023
Dados consolidados do DATASUS
Introdução
No fim de 2024, o DATASUS publicou os dados consolidados do Sistema de Informações de Mortalidade (SIM) para o ano de 2023. Com base nesses dados, é possível analisar a evolução dos óbitos no trânsito brasileiro em relação ao ano anterior. Nesse post, vamos explorar esses dados e verificar como as taxas de mortalidade variaram entre 2022 e 2023 para cada unidade da federação.
Nova versão do {roadtrafficdeaths}
Com essa atualização, o pacote {roadtrafficdeaths} (Santos e Saraiva 2024) foi atualizado para incluir as declarações de óbitos no trânsito de 2023. Agradeço novamente aos autores do pacote {microdatasus} (Saldanha, Bastos, e Barcellos 2019), que facilitou muito o processo de extração desses dados.
Variação nas unidades da federação
Aqui estão os pacotes e configurações iniciais utilizadas nessa analise.
A partir do data.frame rtdeaths
, foram filtradas as declarações de óbitos de 2022 e 2023, e depois foi realizada a contagem de óbitos por unidade da federação e por ano.
<- rtdeaths |>
obitos filter(ano_ocorrencia %in% c(2022, 2023)) |>
count(ano_ocorrencia, nome_uf_ocor) |>
drop_na()
Com o objetivo de calcular as taxas de óbitos por 100 mil habitantes, foi necessário obter a população de cada unidade da federação. Aqui foi utilizada a estimativa populacional do IBGE para 2022 e 2023, obtida a partir do sistema Tabnet do DATASUS.
<- "ibge_cnv_projpopuf092116201_75_182_5.csv"
path
<- read_csv2(
populacao
path, locale = locale(encoding = "latin1"),
skip = 3,
n_max = 27
)
<- populacao |>
populacao_fixed ::clean_names() |>
janitorpivot_longer(
cols = -unidade_da_federacao,
names_to = "ano",
values_to = "hab"
|>
) mutate(ano = str_sub(ano, 2, -1) |> as.numeric()) |>
::separate(
tidyr
unidade_da_federacao,into = c("cod_uf", "uf"),
sep = " ",
extra = "merge"
)
Com os dados de óbitos e população foi possível calcular a taxa de óbitos por 100 mil hab. para cada unidade da federação e também a variação entre 2022 e 2023.
<- obitos |>
taxas left_join(
populacao_fixed,by = c("ano_ocorrencia" = "ano", "nome_uf_ocor" = "uf")
|>
) mutate(
taxa = n / hab * 100000
|>
) group_by(nome_uf_ocor) |>
mutate(
delta = taxa - lag(taxa),
delta_prop = delta / lag(taxa)
|>
) filter(ano_ocorrencia == 2023) |>
ungroup()
A Tabela 1 apresenta a quantidade de óbitos, a taxa de óbitos por 100 mil habitantes e a variação dessa taxa entre 2022 e 2023 para cada unidade da federação. O estado com a maior taxa de óbitos em 2023 foi Mato Grosso (35,05) e o menor foi Amapá (9,68). O estado com maior aumento entre os anos foi Bahia (14,39%) e com a maior redução foi Amapá (-17,61%).
|>
taxas select(nome_uf_ocor, n, taxa, delta_prop) |>
gt() |>
cols_label(
nome_uf_ocor = "UF",
n = "Óbitos",
taxa = "Taxa por 100 mil hab.",
delta_prop = "Variação (2022-2023)"
|>
) fmt_number(taxa) |>
fmt_percent(delta_prop) |>
data_color(
columns = taxa,
palette = "Oranges"
|>
) data_color(
columns = delta_prop,
palette = "RdBu",
reverse = TRUE,
domain = c(-0.2, 0.2)
|>
) opt_interactive(use_pagination = FALSE) |>
opt_table_font(
font = google_font("Roboto Mono")
|>
) tab_options(table.font.size = "10pt")
Com auxílio do pacote {geobr}, foi possível carregar os dados geográficos dos estados brasileiros.
<- read_state(year = 2020, simplified = TRUE)
uf
<- uf |>
sf_delta mutate(
name_state = case_match(
name_state,"Amazônas" ~ "Amazonas",
"Rio De Janeiro" ~ "Rio de Janeiro",
"Rio Grande Do Norte" ~ "Rio Grande do Norte",
"Rio Grande Do Sul" ~ "Rio Grande do Sul",
"Mato Grosso Do Sul" ~ "Mato Grosso do Sul",
.default = name_state
)|>
) left_join(taxas, by = c("name_state" = "nome_uf_ocor"))
Os mapas da Figura 1 e Figura 2 apresentam os mesmos dados da Tabela 1, com os valores plotados para cada unidade da federação.
<- 1
legend_size
<- ggplot() +
obitos_map geom_sf(
data = sf_delta,
aes(fill = taxa)
+
) scale_fill_distiller(palette = "Oranges", direction = 1) +
labs(fill = "Óbitos / 100 mil hab.") +
theme(
legend.position = "top",
legend.direction = "horizontal",
legend.key.width = unit(legend_size, "cm")
)
<- ggplot() +
delta_map geom_sf(
data = sf_delta,
aes(fill = delta_prop)
+
) scale_fill_distiller(
palette = "RdBu",
limits = c(-0.2, 0.2),
labels = scales::percent
+
) labs(fill = "Variação (2022-2023)") +
theme(
legend.position = "top",
legend.direction = "horizontal",
legend.key.width = unit(legend_size, "cm")
)


Conclusão
Nessa breve análise foi possível explorar os dados de óbitos no trânsito brasileiro em 2023 e verificar como as taxas de mortalidade variaram em relação ao ano anterior. A Bahia foi o estado com maior aumento na taxa de óbitos entre 2022 e 2023, enquanto o Amapá foi o estado com a maior redução. Esses dados são importantes para orientar políticas públicas e ações de prevenção de sinistros de trânsito em cada unidade da federação.