O objetivo deste tutorial é realizar comparações entre os registros de óbitos e as projeções desse componente. Nesse caso trabalha-se com o nível geográfico UF.

SIM

Leitura dos pacotes

Carregue o pacote “microdatasus” e outros bibliotecas a serem usadas:

library(microdatasus)
library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(readxl)
library(writexl)
library(zoo)
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
library(ggplot2)
library(tidyr)

Microdados

Acesse os microdados de óbitos especificando o período de análise e a UF a ser estudada:

dados_sim <- fetch_datasus(year_start = 2000, 
                           year_end = 2021, 
                           uf = "DF", 
                           information_system = "SIM-DO")
## Your local Internet connection seems to be ok.
## DataSUS FTP server seems to be up. Starting download...

Processe os dados do SIM criando variáveis com a função process_sim

dados_sim <- process_sim(dados_sim)

Crie a variável de faixa etária:

dados_sim$infantil <- 1*(!is.na(dados_sim$IDADEminutos) |
                !is.na(dados_sim$IDADEhoras)|
                !is.na(dados_sim$IDADEdias)|
                !is.na(dados_sim$IDADEmeses))

dados_sim$IDADEanos[which(dados_sim$infantil==1)]<-0




dados_sim<- dados_sim %>% mutate(
  obt = 1,
  ano = as.numeric(substr(DTOBITO,1,4)),
  ano_nasc = as.numeric(substr(DTNASC,1,4)),
  IDADEanos = as.numeric(IDADEanos),
  faixa_idade =  cut(IDADEanos,c(-Inf,0,4,9,14,19,24,29,34,39,
                                 44,49,54,59,64,69,74,79,84,Inf),
                     labels = c("_menor que 1 ano",
                                "01 a 04 anos",
                                "05 a 09 anos",
                                "10 a 14 anos",
                                "15 a 19 anos",
                                "20 a 24 anos",
                                "25 a 29 anos",
                                "30 a 34 anos",
                                "35 a 39 anos",
                                "40 a 44 anos",
                                "45 a 49 anos",
                                "50 a 54 anos",
                                "55 a 59 anos",
                                "60 a 64 anos",
                                "65 a 69 anos",
                                "70 a 74 anos",
                                "75 a 79 anos",
                                "80 a 84 anos",
                                "85 anos ou mais")))

Projeções populacionais

Lendo os dados das projeções populacionais especialmente da Unidade da Federação escolhida. O arquivo auxiliar está disponível aqui. Para todas as UFs, o arquivo do IBGE pode ser acessado aqui.

proj_ibge<- read_excel("indicadores_projecoes_DF_IBGE.xlsx")

proj_ibge<-ts(proj_ibge,start = 2010,frequency = 1)
proj_ibge<-window(proj_ibge,start = 2010,end=2030,frequency = 1)

Indicadores demográficos

Total de óbitos

Sintetize um total de óbitos para a Unidade da Federação escolhida:

# total de óbitos para DF
aggregate(data=dados_sim,obt~ano, FUN= sum) # problema identificado com criação de NA em 2000
##     ano   obt
## 1  2000  8563
## 2  2001  8760
## 3  2002  9066
## 4  2003  9095
## 5  2004  9609
## 6  2005  9425
## 7  2006  9513
## 8  2007  9866
## 9  2008 10284
## 10 2009 10459
## 11 2010 10851
## 12 2011 11253
## 13 2012 11308
## 14 2013 11408
## 15 2014 12018
## 16 2015 11975
## 17 2016 12050
## 18 2017 12514
## 19 2018 12157
## 20 2019 12804
## 21 2020 16218
## 22 2021 19079
# correção dos NA presente na dados_sim de 2000
dados_sim$ano[which(is.na(dados_sim$ano))]<-2000
# total de óbitos para DF
aggregate(data=dados_sim,obt~ano, FUN= sum) # ok com http://tabnet.datasus.gov.br/cgi/tabcgi.exe?sim/cnv/obt10df.def
##     ano   obt
## 1  2000  8572
## 2  2001  8760
## 3  2002  9066
## 4  2003  9095
## 5  2004  9609
## 6  2005  9425
## 7  2006  9513
## 8  2007  9866
## 9  2008 10284
## 10 2009 10459
## 11 2010 10851
## 12 2011 11253
## 13 2012 11308
## 14 2013 11408
## 15 2014 12018
## 16 2015 11975
## 17 2016 12050
## 18 2017 12514
## 19 2018 12157
## 20 2019 12804
## 21 2020 16218
## 22 2021 19079

Organize uma table com o total de óbitos por sexo para a UF escolhida:

# tabela 1 - total de obitos e por sexo
tab1 <-dados_sim  %>%
  group_by(ano) %>%
  summarise(obt = n())

tab1a<-dados_sim  %>%
  filter(SEXO=="Masculino")%>%
  group_by(ano) %>%
  summarise(obt_masc = n())
tabela1<-merge(tab1,tab1a,by="ano")
rm(tab1,tab1a)

tab1b<-dados_sim  %>%
  filter(SEXO=="Feminino")%>%
  group_by(ano) %>%
  summarise(obt_fem = n())
tabela1<-merge(tabela1,tab1b,by="ano")
rm(tab1b)

# ajuste com NA
tabela1$obt_masc_ajust<-round(tabela1$obt_masc/(tabela1$obt_masc+tabela1$obt_fem)*tabela1$obt)
tabela1$obt_fem_ajust<-round(tabela1$obt_fem/(tabela1$obt_masc+tabela1$obt_fem)*tabela1$obt)
# verifica se a soma é verdadeira
tabela1$obt_fem_ajust+tabela1$obt_masc_ajust==tabela1$obt
##  [1] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [16] TRUE TRUE TRUE TRUE TRUE TRUE TRUE
tabela1
##     ano   obt obt_masc obt_fem obt_masc_ajust obt_fem_ajust
## 1  2000  8572     5140    3423           5145          3427
## 2  2001  8760     5226    3532           5227          3533
## 3  2002  9066     5381    3685           5381          3685
## 4  2003  9095     5474    3616           5477          3618
## 5  2004  9609     5666    3937           5670          3939
## 6  2005  9425     5564    3856           5567          3858
## 7  2006  9513     5515    3996           5516          3997
## 8  2007  9866     5716    4150           5716          4150
## 9  2008 10284     5984    4298           5985          4299
## 10 2009 10459     6125    4332           6126          4333
## 11 2010 10851     6306    4545           6306          4545
## 12 2011 11253     6530    4722           6531          4722
## 13 2012 11308     6570    4733           6573          4735
## 14 2013 11408     6479    4928           6480          4928
## 15 2014 12018     6856    5162           6856          5162
## 16 2015 11975     6708    5262           6711          5264
## 17 2016 12050     6777    5273           6777          5273
## 18 2017 12514     6887    5625           6888          5626
## 19 2018 12157     6688    5467           6689          5468
## 20 2019 12804     7030    5773           7031          5773
## 21 2020 16218     9162    7055           9163          7055
## 22 2021 19079    10612    8462          10615          8464
# exportando tabelas
write_xlsx(tabela1,"Tabela  1a - Total de obitos.xlsx")

Suavizando os dados com uma média móvel e plotando um gráfico:

# produzir gráfico
tabela1<-ts(tabela1,start = 2000,frequency = 1)
library(zoo)
tabela1m<-rollmean(x = tabela1,k = 3)
tabela1m
## Time Series:
## Start = 2001 
## End = 2020 
## Frequency = 1 
##       ano       obt obt_masc  obt_fem obt_masc_ajust obt_fem_ajust
## 2001 2001  8799.333 5249.000 3546.667       5251.000      3548.333
## 2002 2002  8973.667 5360.333 3611.000       5361.667      3612.000
## 2003 2003  9256.667 5507.000 3746.000       5509.333      3747.333
## 2004 2004  9376.333 5568.000 3803.000       5571.333      3805.000
## 2005 2005  9515.667 5581.667 3929.667       5584.333      3931.333
## 2006 2006  9601.333 5598.333 4000.667       5599.667      4001.667
## 2007 2007  9887.667 5738.333 4148.000       5739.000      4148.667
## 2008 2008 10203.000 5941.667 4260.000       5942.333      4260.667
## 2009 2009 10531.333 6138.333 4391.667       6139.000      4392.333
## 2010 2010 10854.333 6320.333 4533.000       6321.000      4533.333
## 2011 2011 11137.333 6468.667 4666.667       6470.000      4667.333
## 2012 2012 11323.000 6526.333 4794.333       6528.000      4795.000
## 2013 2013 11578.000 6635.000 4941.000       6636.333      4941.667
## 2014 2014 11800.333 6681.000 5117.333       6682.333      5118.000
## 2015 2015 12014.333 6780.333 5232.333       6781.333      5233.000
## 2016 2016 12179.667 6790.667 5386.667       6792.000      5387.667
## 2017 2017 12240.333 6784.000 5455.000       6784.667      5455.667
## 2018 2018 12491.667 6868.333 5621.667       6869.333      5622.333
## 2019 2019 13726.333 7626.667 6098.333       7627.667      6098.667
## 2020 2020 16033.667 8934.667 7096.667       8936.333      7097.333
write_xlsx(as.data.frame(tabela1m),"Tabela  1b - Total de obitos com ma.xlsx")

ggplot(as.data.frame(tabela1m), aes(x=ano, y=obt)) +
  geom_line( color="steelblue") +
  geom_point() +
  xlab("Ano")+
  ylab("Obitos")+
  ggtitle("Total de obitos - DF - 2000-2020 ")

Como você descreveria essa trajetória?

Com os dados das Projeções Populacionais, qual o total de óbitos projetado até 2030?

ggplot(as.data.frame(proj_ibge), aes(x=ano, y=obt)) +
  geom_line( color="steelblue") +
  geom_point() +
  xlab("Ano")+
  ylab("Obitos")+
  ggtitle("Total de obitos - DF - 2000-2020 ")

Comparando o total de óbitos por fontes, tem-se:

ano1<-2010:2030
var1<-c(round(as.data.frame(tabela1)$obt[11:21]),rep(NA,10))
var2<-c(round(as.data.frame(tabela1m)$obt[10:19]),rep(NA,11))
var3<-as.data.frame(proj_ibge)$obt
data1<-data.frame(ano1,var1,var2,var3)

p1<-ggplot(data1, aes(x=ano1)) +
  geom_line(aes(y=var1, col="SIM"),linetype=1) +
  geom_line(aes(y=var2, col="SIM-média móvel"),linetype=1) +
  geom_line(aes(y=var3, col="Proj. IBGE"),linetype=1) +
  labs(title="Total de óbitos por fonte de dados - DF - 2010-2030", y="Total de óbitos",x=element_blank()) +
  scale_color_manual(name="",
                     values = c("SIM"="coral4",
                                "SIM-média móvel"="coral3",
                                "Proj. IBGE"="darkblue")) +
  # ylim(0,NA)+
  theme(legend.position="bottom",axis.text.x = element_text(angle = 90))+
  scale_x_continuous(breaks=ano1, labels=ano1)
p1
## Warning: Removed 10 rows containing missing values (`geom_line()`).
## Warning: Removed 11 rows containing missing values (`geom_line()`).

png(filename = "Total de obitos por fonte de dados - DF - 2010-2030.png",
    width = 15, height = 8,
    units = "cm",res = 1200)
p1
## Warning: Removed 10 rows containing missing values (`geom_line()`).
## Removed 11 rows containing missing values (`geom_line()`).
dev.off()
## png 
##   2
write_xlsx(data1,"Tabela  1c - Total de obitos por fontes.xlsx")

Taxa Bruta de Mortalidade

Calculando a Taxa Bruta de Mortalidade:

# taxa bruta de mortalidade
ano2<-2010:2030
var1<-c(round(as.data.frame(tabela1)$obt[11:21]),rep(NA,10))/
  as.data.frame(proj_ibge)$pop_total*1000
var2<-c(round(as.data.frame(tabela1m)$obt[10:19]),rep(NA,11))/
  as.data.frame(proj_ibge)$pop_total*1000
var3<-as.data.frame(proj_ibge)$tbm
data2<-data.frame(ano2,var1,var2,var3)

p2<-ggplot(data2, aes(x=ano2)) +
  geom_line(aes(y=var1, col="SIM"),linetype=1,size=1.2) +
  geom_line(aes(y=var2, col="SIM-média móvel"),linetype=1,size=1.2) +
  geom_line(aes(y=var3, col="Proj. IBGE"),linetype=1,size=1.2) +
  labs(title="Taxa Bruta de Mortalidade por fonte de dados - DF - 2010-2030",
       y="TBM",x=element_blank()) +
  scale_color_manual(name="",
                     values = c("SIM"="coral4",
                                "SIM-média móvel"="coral3",
                                "Proj. IBGE"="darkblue")) +
  # ylim(0,NA)+
  theme(legend.position="bottom",axis.text.x = element_text(angle = 90))+
  scale_x_continuous(breaks=ano2, labels=ano2)
## Warning: Using `size` aesthetic for lines was deprecated in ggplot2 3.4.0.
## ℹ Please use `linewidth` instead.
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.
p2
## Warning: Removed 10 rows containing missing values (`geom_line()`).
## Warning: Removed 11 rows containing missing values (`geom_line()`).

png(filename = "Taxa Bruta de Mortalidade por fonte de dados - DF - 2010-2030.png",
    width = 15, height = 8,
    units = "cm",res = 1200)
p2
## Warning: Removed 10 rows containing missing values (`geom_line()`).
## Removed 11 rows containing missing values (`geom_line()`).
dev.off()
## png 
##   2
write_xlsx(data2,"Tabela  1d - Taxa Bruta de Mortalidade por fontes.xlsx")

Calculando o total de óbitos por faixa etária. O arquivo auxiliar pode ser acessado aqui e foi baseada nos dados disponíveis aqui.

# total de obitos para DF por faixa etaria
tab2 <- dados_sim %>%
  group_by(ano,faixa_idade) %>%
  summarise(
    obt = n())
## `summarise()` has grouped output by 'ano'. You can override using the `.groups`
## argument.
tab2a <- dados_sim %>%
  filter(SEXO=="Masculino")%>%
  group_by(ano,faixa_idade) %>%
  summarise(
    obt_h = n())
## `summarise()` has grouped output by 'ano'. You can override using the `.groups`
## argument.
tabela2<-merge(tab2,tab2a,by=c("ano","faixa_idade"))
rm(tab2,tab2a)

tab2b <- dados_sim %>%
  filter(SEXO=="Feminino")%>%
  group_by(ano,faixa_idade) %>%
  summarise(
    obt_m = n())
## `summarise()` has grouped output by 'ano'. You can override using the `.groups`
## argument.
tabela2<-merge(tabela2,tab2b,by=c("ano","faixa_idade"))
rm(tab2b)

subset(tabela2,ano==2019) # conferencia ok com http://tabnet.datasus.gov.br/cgi/tabcgi.exe?sim/cnv/obt10df.def
##      ano      faixa_idade  obt obt_h obt_m
## 380 2019 _menor que 1 ano  362   212   149
## 381 2019     01 a 04 anos   74    43    31
## 382 2019     05 a 09 anos   35    17    18
## 383 2019     10 a 14 anos   38    18    20
## 384 2019     15 a 19 anos  164   126    38
## 385 2019     20 a 24 anos  237   199    38
## 386 2019     25 a 29 anos  251   194    57
## 387 2019     30 a 34 anos  268   198    70
## 388 2019     35 a 39 anos  419   286   133
## 389 2019     40 a 44 anos  453   305   148
## 390 2019     45 a 49 anos  556   348   208
## 391 2019     50 a 54 anos  732   453   279
## 392 2019     55 a 59 anos  866   522   344
## 393 2019     60 a 64 anos  995   573   422
## 394 2019     65 a 69 anos 1131   648   483
## 395 2019     70 a 74 anos 1194   622   572
## 396 2019     75 a 79 anos 1356   663   693
## 397 2019     80 a 84 anos 1416   713   703
## 398 2019  85 anos ou mais 2257   890  1367
subset(tabela2,ano==2020)
##      ano      faixa_idade  obt obt_h obt_m
## 399 2020 _menor que 1 ano  384   193   190
## 400 2020     01 a 04 anos   38    20    18
## 401 2020     05 a 09 anos   36    21    15
## 402 2020     10 a 14 anos   32    21    11
## 403 2020     15 a 19 anos  133   103    30
## 404 2020     20 a 24 anos  231   179    52
## 405 2020     25 a 29 anos  278   212    66
## 406 2020     30 a 34 anos  331   231   100
## 407 2020     35 a 39 anos  429   295   134
## 408 2020     40 a 44 anos  615   421   194
## 409 2020     45 a 49 anos  707   457   250
## 410 2020     50 a 54 anos  911   586   325
## 411 2020     55 a 59 anos 1173   731   442
## 412 2020     60 a 64 anos 1370   816   554
## 413 2020     65 a 69 anos 1607   945   662
## 414 2020     70 a 74 anos 1686   936   750
## 415 2020     75 a 79 anos 1682   896   786
## 416 2020     80 a 84 anos 1840   946   894
## 417 2020  85 anos ou mais 2730  1150  1580
## 418 2020             <NA>    5     3     2
# faz ajuste de NA - faixa da idade
table1<-as.data.frame(tabela1[,c("ano","obt")])
colnames(table1)<-c("ano","obt_total")
tabela2<-merge(tabela2,table1,by=c("ano"))
rm(table1)

table2 <- tabela2 %>%
  filter(!is.na(faixa_idade))%>%
  group_by(ano) %>%
  summarise(
    obt_sem_na = sum(obt))

tabela2<-merge(tabela2,table2,by=c("ano"))

tabela2$part<-tabela2$obt/tabela2$obt_sem_na
tabela2$obt_ajust<-round(tabela2$part*tabela2$obt_total)

#  arredondou para todos
tabela2 %>%
  filter(!is.na(faixa_idade))%>%
  group_by(ano) %>%
  summarise(
    obt_conf = sum(obt_ajust))
## # A tibble: 22 × 2
##      ano obt_conf
##    <dbl>    <dbl>
##  1  2000     8575
##  2  2001     8759
##  3  2002     9067
##  4  2003     9096
##  5  2004     9612
##  6  2005     9425
##  7  2006     9512
##  8  2007     9866
##  9  2008    10286
## 10  2009    10461
## # ℹ 12 more rows
tabela2$obt_h_ajust<-round(tabela2$obt_h/(tabela2$obt_h+tabela2$obt_m)*tabela2$obt_ajust)
tabela2$obt_m_ajust<-round(tabela2$obt_m/(tabela2$obt_h+tabela2$obt_m)*tabela2$obt_ajust)
# conferencia
tabela2$obt_h_ajust+tabela2$obt_m_ajust==tabela2$obt_ajust
##   [1] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
##  [16] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
##  [31] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
##  [46] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
##  [61] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
##  [76] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
##  [91] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [106] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [121] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [136] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [151] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [166] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [181] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [196] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [211] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [226] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [241] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [256] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [271] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [286] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [301] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [316] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [331] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [346] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [361] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [376] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [391] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [406] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [421] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [436] TRUE TRUE TRUE
# população geral
# traz dados de população por faixa etária
pop<-read_excel("pop_faixa_etaria.xlsx",sheet="total")
colnames(pop)
##  [1] "ano"              "pop_total"        "_menor que 1 ano" "01 a 04 anos"    
##  [5] "05 a 09 anos"     "10 a 14 anos"     "15 a 19 anos"     "20 a 24 anos"    
##  [9] "25 a 29 anos"     "30 a 34 anos"     "35 a 39 anos"     "40 a 44 anos"    
## [13] "45 a 49 anos"     "50 a 54 anos"     "55 a 59 anos"     "60 a 64 anos"    
## [17] "65 a 69 anos"     "70 a 74 anos"     "75 a 79 anos"     "80 a 84 anos"    
## [21] "85 anos ou mais"
pop_wide<-as.data.frame(pop)

pop_long <- pop_wide %>% gather(faixa_idade, pop, -c(ano)) 
tabela2<-merge(tabela2,pop_long,by=c("ano","faixa_idade"))

Taxas Específicas de Mortalidade

Calculando as taxas específicas de mortalidade:

# Taxas Específicas de Mortalidade (TEM) por idade (nMx)
tabela2$tem<-tabela2$obt_ajust/tabela2$pop

#fazendo a média móvel
tabela2[,c("ano","faixa_idade","obt_ajust")]
##      ano      faixa_idade obt_ajust
## 1   2010 _menor que 1 ano       565
## 2   2010     01 a 04 anos        72
## 3   2010     05 a 09 anos        57
## 4   2010     10 a 14 anos        67
## 5   2010     15 a 19 anos       254
## 6   2010     20 a 24 anos       340
## 7   2010     25 a 29 anos       352
## 8   2010     30 a 34 anos       387
## 9   2010     35 a 39 anos       392
## 10  2010     40 a 44 anos       481
## 11  2010     45 a 49 anos       598
## 12  2010     50 a 54 anos       640
## 13  2010     55 a 59 anos       710
## 14  2010     60 a 64 anos       761
## 15  2010     65 a 69 anos       873
## 16  2010     70 a 74 anos       969
## 17  2010     75 a 79 anos       974
## 18  2010     80 a 84 anos       930
## 19  2010  85 anos ou mais      1430
## 20  2011 _menor que 1 ano       505
## 21  2011     01 a 04 anos        72
## 22  2011     05 a 09 anos        56
## 23  2011     10 a 14 anos        84
## 24  2011     15 a 19 anos       286
## 25  2011     20 a 24 anos       350
## 26  2011     25 a 29 anos       392
## 27  2011     30 a 34 anos       425
## 28  2011     35 a 39 anos       455
## 29  2011     40 a 44 anos       490
## 30  2011     45 a 49 anos       575
## 31  2011     50 a 54 anos       627
## 32  2011     55 a 59 anos       761
## 33  2011     60 a 64 anos       836
## 34  2011     65 a 69 anos       891
## 35  2011     70 a 74 anos      1048
## 36  2011     75 a 79 anos       970
## 37  2011     80 a 84 anos      1002
## 38  2011  85 anos ou mais      1428
## 39  2012 _menor que 1 ano       510
## 40  2012     01 a 04 anos        66
## 41  2012     05 a 09 anos        38
## 42  2012     10 a 14 anos        66
## 43  2012     15 a 19 anos       321
## 44  2012     20 a 24 anos       345
## 45  2012     25 a 29 anos       350
## 46  2012     30 a 34 anos       399
## 47  2012     35 a 39 anos       391
## 48  2012     40 a 44 anos       481
## 49  2012     45 a 49 anos       609
## 50  2012     50 a 54 anos       697
## 51  2012     55 a 59 anos       772
## 52  2012     60 a 64 anos       834
## 53  2012     65 a 69 anos       917
## 54  2012     70 a 74 anos       993
## 55  2012     75 a 79 anos      1071
## 56  2012     80 a 84 anos       972
## 57  2012  85 anos ou mais      1476
## 58  2013 _menor que 1 ano       571
## 59  2013     01 a 04 anos        72
## 60  2013     05 a 09 anos        39
## 61  2013     10 a 14 anos        68
## 62  2013     15 a 19 anos       302
## 63  2013     20 a 24 anos       294
## 64  2013     25 a 29 anos       360
## 65  2013     30 a 34 anos       366
## 66  2013     35 a 39 anos       373
## 67  2013     40 a 44 anos       462
## 68  2013     45 a 49 anos       619
## 69  2013     50 a 54 anos       640
## 70  2013     55 a 59 anos       765
## 71  2013     60 a 64 anos       854
## 72  2013     65 a 69 anos       891
## 73  2013     70 a 74 anos      1074
## 74  2013     75 a 79 anos      1090
## 75  2013     80 a 84 anos      1009
## 76  2013  85 anos ou mais      1560
## 77  2014 _menor que 1 ano       513
## 78  2014     01 a 04 anos        74
## 79  2014     05 a 09 anos        50
## 80  2014     10 a 14 anos        63
## 81  2014     15 a 19 anos       254
## 82  2014     20 a 24 anos       329
## 83  2014     25 a 29 anos       319
## 84  2014     30 a 34 anos       402
## 85  2014     35 a 39 anos       407
## 86  2014     40 a 44 anos       479
## 87  2014     45 a 49 anos       607
## 88  2014     50 a 54 anos       705
## 89  2014     55 a 59 anos       785
## 90  2014     60 a 64 anos       908
## 91  2014     65 a 69 anos      1007
## 92  2014     70 a 74 anos      1155
## 93  2014     75 a 79 anos      1135
## 94  2014     80 a 84 anos      1057
## 95  2014  85 anos ou mais      1767
## 96  2015 _menor que 1 ano       489
## 97  2015     01 a 04 anos        74
## 98  2015     05 a 09 anos        33
## 99  2015     10 a 14 anos        64
## 100 2015     15 a 19 anos       273
## 101 2015     20 a 24 anos       292
## 102 2015     25 a 29 anos       257
## 103 2015     30 a 34 anos       363
## 104 2015     35 a 39 anos       382
## 105 2015     40 a 44 anos       471
## 106 2015     45 a 49 anos       576
## 107 2015     50 a 54 anos       756
## 108 2015     55 a 59 anos       803
## 109 2015     60 a 64 anos       897
## 110 2015     65 a 69 anos       991
## 111 2015     70 a 74 anos      1096
## 112 2015     75 a 79 anos      1220
## 113 2015     80 a 84 anos      1087
## 114 2015  85 anos ou mais      1851
## 115 2016 _menor que 1 ano       448
## 116 2016     01 a 04 anos        67
## 117 2016     05 a 09 anos        39
## 118 2016     10 a 14 anos        60
## 119 2016     15 a 19 anos       250
## 120 2016     20 a 24 anos       319
## 121 2016     25 a 29 anos       281
## 122 2016     30 a 34 anos       343
## 123 2016     35 a 39 anos       454
## 124 2016     40 a 44 anos       454
## 125 2016     45 a 49 anos       610
## 126 2016     50 a 54 anos       672
## 127 2016     55 a 59 anos       822
## 128 2016     60 a 64 anos       861
## 129 2016     65 a 69 anos      1007
## 130 2016     70 a 74 anos      1097
## 131 2016     75 a 79 anos      1231
## 132 2016     80 a 84 anos      1146
## 133 2016  85 anos ou mais      1890
## 134 2017 _menor que 1 ano       495
## 135 2017     01 a 04 anos        77
## 136 2017     05 a 09 anos        37
## 137 2017     10 a 14 anos        52
## 138 2017     15 a 19 anos       232
## 139 2017     20 a 24 anos       247
## 140 2017     25 a 29 anos       226
## 141 2017     30 a 34 anos       283
## 142 2017     35 a 39 anos       383
## 143 2017     40 a 44 anos       455
## 144 2017     45 a 49 anos       570
## 145 2017     50 a 54 anos       709
## 146 2017     55 a 59 anos       864
## 147 2017     60 a 64 anos       987
## 148 2017     65 a 69 anos      1114
## 149 2017     70 a 74 anos      1063
## 150 2017     75 a 79 anos      1272
## 151 2017     80 a 84 anos      1289
## 152 2017  85 anos ou mais      2158
## 153 2018 _menor que 1 ano       453
## 154 2018     01 a 04 anos        57
## 155 2018     05 a 09 anos        34
## 156 2018     10 a 14 anos        44
## 157 2018     15 a 19 anos       184
## 158 2018     20 a 24 anos       258
## 159 2018     25 a 29 anos       228
## 160 2018     30 a 34 anos       282
## 161 2018     35 a 39 anos       415
## 162 2018     40 a 44 anos       464
## 163 2018     45 a 49 anos       572
## 164 2018     50 a 54 anos       686
## 165 2018     55 a 59 anos       777
## 166 2018     60 a 64 anos       927
## 167 2018     65 a 69 anos      1091
## 168 2018     70 a 74 anos      1104
## 169 2018     75 a 79 anos      1242
## 170 2018     80 a 84 anos      1247
## 171 2018  85 anos ou mais      2092
## 172 2019 _menor que 1 ano       362
## 173 2019     01 a 04 anos        74
## 174 2019     05 a 09 anos        35
## 175 2019     10 a 14 anos        38
## 176 2019     15 a 19 anos       164
## 177 2019     20 a 24 anos       237
## 178 2019     25 a 29 anos       251
## 179 2019     30 a 34 anos       268
## 180 2019     35 a 39 anos       419
## 181 2019     40 a 44 anos       453
## 182 2019     45 a 49 anos       556
## 183 2019     50 a 54 anos       732
## 184 2019     55 a 59 anos       866
## 185 2019     60 a 64 anos       995
## 186 2019     65 a 69 anos      1131
## 187 2019     70 a 74 anos      1194
## 188 2019     75 a 79 anos      1356
## 189 2019     80 a 84 anos      1416
## 190 2019  85 anos ou mais      2257
## 191 2020 _menor que 1 ano       384
## 192 2020     01 a 04 anos        38
## 193 2020     05 a 09 anos        36
## 194 2020     10 a 14 anos        32
## 195 2020     15 a 19 anos       133
## 196 2020     20 a 24 anos       231
## 197 2020     25 a 29 anos       278
## 198 2020     30 a 34 anos       331
## 199 2020     35 a 39 anos       429
## 200 2020     40 a 44 anos       615
## 201 2020     45 a 49 anos       707
## 202 2020     50 a 54 anos       911
## 203 2020     55 a 59 anos      1173
## 204 2020     60 a 64 anos      1370
## 205 2020     65 a 69 anos      1607
## 206 2020     70 a 74 anos      1687
## 207 2020     75 a 79 anos      1683
## 208 2020     80 a 84 anos      1841
## 209 2020  85 anos ou mais      2731
## 210 2021 _menor que 1 ano       402
## 211 2021     01 a 04 anos        54
## 212 2021     05 a 09 anos        25
## 213 2021     10 a 14 anos        40
## 214 2021     15 a 19 anos       125
## 215 2021     20 a 24 anos       228
## 216 2021     25 a 29 anos       301
## 217 2021     30 a 34 anos       390
## 218 2021     35 a 39 anos       586
## 219 2021     40 a 44 anos       833
## 220 2021     45 a 49 anos      1028
## 221 2021     50 a 54 anos      1226
## 222 2021     55 a 59 anos      1484
## 223 2021     60 a 64 anos      1749
## 224 2021     65 a 69 anos      1923
## 225 2021     70 a 74 anos      2054
## 226 2021     75 a 79 anos      1871
## 227 2021     80 a 84 anos      1798
## 228 2021  85 anos ou mais      2962
table2<-spread(tabela2[,c("ano","faixa_idade","obt_ajust")],faixa_idade,obt_ajust)

table2<-ts(table2,start = 2010,frequency = 1)
library(zoo)
library(ggplot2)
table2m<-rollmean(x = table2,k = 3)

table2m<-as.data.frame(table2m) %>% gather(faixa_idade, obt_ajust_m, -c(ano)) # para fazer o merge coloca o nome faixa_idade
tabela2<-merge(tabela2,table2m,by=c("ano","faixa_idade"),all.x = TRUE)


colnames(tabela2)
##  [1] "ano"         "faixa_idade" "obt"         "obt_h"       "obt_m"      
##  [6] "obt_total"   "obt_sem_na"  "part"        "obt_ajust"   "obt_h_ajust"
## [11] "obt_m_ajust" "pop"         "tem"         "obt_ajust_m"
tabela2$tem_m<-tabela2$obt_ajust_m/tabela2$pop

tabela2$ano<-as.character(tabela2$ano)

data<-subset(tabela2,ano!=2010&ano!=2020)
p4<-ggplot(data, aes(x=faixa_idade, y=log(tem_m),group=ano,color=ano)) +
  geom_line(linetype=1,size=1.2) +
  labs(title="Taxas Específicas de Mortalidade por ano - DF - 2010-2020",
       y="ln(TEM)",x=element_blank()) +
  # ylim(0,NA)+
  theme(legend.position="bottom",axis.text.x = element_text(angle = 90))


p4
## Warning: Removed 19 rows containing missing values (`geom_line()`).

png(filename = "Taxas Específicas de Mortalidade por ano - DF - 2010-2020.png",
    width = 15, height = 12,
    units = "cm",res = 1200)
p4
## Warning: Removed 19 rows containing missing values (`geom_line()`).
dev.off()
## png 
##   2
write_xlsx(tabela2,"Tabela  1e - Taxas Específicas de Mortalidade.xlsx")

Fazendo em separado para homens e mulheres

# população homens
# traz dados de população por faixa etária
pop_h<-read_excel("pop_faixa_etaria.xlsx",sheet="homens")
colnames(pop_h)
##  [1] "ano"              "pop_total"        "_menor que 1 ano" "01 a 04 anos"    
##  [5] "05 a 09 anos"     "10 a 14 anos"     "15 a 19 anos"     "20 a 24 anos"    
##  [9] "25 a 29 anos"     "30 a 34 anos"     "35 a 39 anos"     "40 a 44 anos"    
## [13] "45 a 49 anos"     "50 a 54 anos"     "55 a 59 anos"     "60 a 64 anos"    
## [17] "65 a 69 anos"     "70 a 74 anos"     "75 a 79 anos"     "80 a 84 anos"    
## [21] "85 anos ou mais"
library(tidyr)
pop_h_wide<-as.data.frame(pop_h)

pop_h_long <- pop_h_wide %>% gather(faixa_idade, pop_h, -c(ano)) # para fazer o merge coloca o nome faixa_idade_mae_15_49

tabela2<-merge(tabela2,pop_h_long,by=c("ano","faixa_idade"))

# Taxas Específicas de Mortalidade (TEM) masculina por idade (nMx)
tabela2$tem_h<-tabela2$obt_h_ajust/tabela2$pop_h

#fazendo a média móvel
table2h<-spread(tabela2[,c("ano","faixa_idade","obt_h_ajust")],faixa_idade,obt_h_ajust)

table2h$ano<-as.numeric(table2h$ano)
table2h<-ts(table2h,start = 2010,frequency = 1)
library(zoo)
library(ggplot2)
table2hm<-rollmean(x = table2h,k = 3)
table2hm<-as.data.frame(table2hm)

table2hm<-table2hm %>% gather(faixa_idade, obt_h_ajust_m, -c(ano)) # para fazer o merge coloca o nome faixa_idade
tabela2<-merge(tabela2,table2hm,by=c("ano","faixa_idade"),all.x = TRUE)

colnames(tabela2)
##  [1] "ano"           "faixa_idade"   "obt"           "obt_h"        
##  [5] "obt_m"         "obt_total"     "obt_sem_na"    "part"         
##  [9] "obt_ajust"     "obt_h_ajust"   "obt_m_ajust"   "pop"          
## [13] "tem"           "obt_ajust_m"   "tem_m"         "pop_h"        
## [17] "tem_h"         "obt_h_ajust_m"
tabela2$tem_h_m<-tabela2$obt_h_ajust_m/tabela2$pop_h

tabela2$ano<-as.character(tabela2$ano)

data<-subset(tabela2,ano!=2010&ano!=2020)
p4<-ggplot(data, aes(x=faixa_idade, y=log(tem_h_m),group=ano,color=ano)) +
  geom_line(linetype=1,size=1.2) +
  labs(title="Taxas Específicas de Mortalidade dos homens por ano - DF - 2010-2020",
       y="ln(TEM)",x=element_blank()) +
  # ylim(0,NA)+
  theme(legend.position="bottom",axis.text.x = element_text(angle = 90))


p4
## Warning: Removed 19 rows containing missing values (`geom_line()`).

png(filename = "Taxas Específicas de Mortalidade dos homens por ano - DF - 2010-2020.png",
    width = 15, height = 12,
    units = "cm",res = 1200)
p4
## Warning: Removed 19 rows containing missing values (`geom_line()`).
dev.off()
## png 
##   2
# população mulheres
library(readxl)
# traz dados de população por faixa etária
pop_m<-read_excel("pop_faixa_etaria.xlsx",sheet="mulheres")
colnames(pop_m)
##  [1] "ano"              "pop_total"        "_menor que 1 ano" "01 a 04 anos"    
##  [5] "05 a 09 anos"     "10 a 14 anos"     "15 a 19 anos"     "20 a 24 anos"    
##  [9] "25 a 29 anos"     "30 a 34 anos"     "35 a 39 anos"     "40 a 44 anos"    
## [13] "45 a 49 anos"     "50 a 54 anos"     "55 a 59 anos"     "60 a 64 anos"    
## [17] "65 a 69 anos"     "70 a 74 anos"     "75 a 79 anos"     "80 a 84 anos"    
## [21] "85 anos ou mais"
library(tidyr)
pop_m_wide<-as.data.frame(pop_m)

pop_m_long <- pop_m_wide %>% gather(faixa_idade, pop_m, -c(ano)) # para fazer o merge coloca o nome faixa_idade_mae_15_49

tabela2<-merge(tabela2,pop_m_long,by=c("ano","faixa_idade"))

# Taxas Específicas de Mortalidade (TEM) feminina por idade (nMx)
tabela2$tem_mu<-tabela2$obt_m_ajust/tabela2$pop_m

#fazendo a média móvel
table2<-spread(tabela2[,c("ano","faixa_idade","obt_m_ajust")],faixa_idade,obt_m_ajust)
table2$ano<-as.numeric(table2$ano)

table2<-ts(table2,start = 2010,frequency = 1)
library(zoo)
library(ggplot2)
table2m<-rollmean(x = table2,k = 3)
table2m<-as.data.frame(table2m)


table2m<-table2m %>% gather(faixa_idade, obt_m_ajust_m, -c(ano)) # para fazer o merge coloca o nome faixa_idade
tabela2<-merge(tabela2,table2m,by=c("ano","faixa_idade"),all.x = TRUE)


colnames(tabela2)
##  [1] "ano"           "faixa_idade"   "obt"           "obt_h"        
##  [5] "obt_m"         "obt_total"     "obt_sem_na"    "part"         
##  [9] "obt_ajust"     "obt_h_ajust"   "obt_m_ajust"   "pop"          
## [13] "tem"           "obt_ajust_m"   "tem_m"         "pop_h"        
## [17] "tem_h"         "obt_h_ajust_m" "tem_h_m"       "pop_m"        
## [21] "tem_mu"        "obt_m_ajust_m"
tabela2$tem_m_m<-tabela2$obt_m_ajust_m/tabela2$pop_m

tabela2$ano<-as.character(tabela2$ano)

data<-subset(tabela2,ano!=2010&ano!=2020)
p4<-ggplot(data, aes(x=faixa_idade, y=log(tem_m_m),group=ano,color=ano)) +
  geom_line(linetype=1,size=1.2) +
  labs(title="Taxas Específicas de Mortalidade das mulheres por ano - DF - 2010-2020",
       y="ln(TEM)",x=element_blank()) +
  # ylim(0,NA)+
  theme(legend.position="bottom",axis.text.x = element_text(angle = 90))


p4
## Warning: Removed 19 rows containing missing values (`geom_line()`).

png(filename = "Taxas Específicas de Mortalidade das mulheres por ano - DF - 2010-2020.png",
    width = 15, height = 12,
    units = "cm",res = 1200)
p4
## Warning: Removed 19 rows containing missing values (`geom_line()`).
dev.off()
## png 
##   2
write_xlsx(tabela2,"Tabela  1f - Taxas Específicas de Mortalidade por sexo.xlsx")

Taxa de Mortalidade Infantil

Calculando a taxa de mortalidade infantil:

# Taxa de Mortalidade Infantil (TMI)

# trazer informação do total de nascidos vivos
nascidos_vivos<- read_excel("Tabela  1b - Total de nascimentos com média móvel.xlsx")

subset(tabela2,faixa_idade=="_menor que 1 ano")
##      ano      faixa_idade obt obt_h obt_m obt_total obt_sem_na       part
## 1   2010 _menor que 1 ano 559   300   259     10851      10731 0.05209207
## 20  2011 _menor que 1 ano 499   279   219     11253      11128 0.04484184
## 39  2012 _menor que 1 ano 506   297   208     11308      11211 0.04513424
## 58  2013 _menor que 1 ano 567   291   275     11408      11322 0.05007949
## 77  2014 _menor que 1 ano 510   294   216     12018      11950 0.04267782
## 96  2015 _menor que 1 ano 488   253   233     11975      11943 0.04086076
## 115 2016 _menor que 1 ano 447   259   188     12050      12027 0.03716638
## 134 2017 _menor que 1 ano 494   264   230     12514      12492 0.03954531
## 153 2018 _menor que 1 ano 453   244   209     12157      12148 0.03729009
## 172 2019 _menor que 1 ano 362   212   149     12804      12804 0.02827241
## 191 2020 _menor que 1 ano 384   193   190     16218      16213 0.02368470
## 210 2021 _menor que 1 ano 402   240   160     19079      19073 0.02107692
##     obt_ajust obt_h_ajust obt_m_ajust   pop         tem obt_ajust_m       tem_m
## 1         565         303         262 41800 0.013516746          NA          NA
## 20        505         283         222 41163 0.012268299    526.6667 0.012794662
## 39        510         300         210 40826 0.012492039    528.6667 0.012949264
## 58        571         294         277 41367 0.013803273    531.3333 0.012844377
## 77        513         296         217 42786 0.011989903    524.3333 0.012254787
## 96        489         255         234 43798 0.011164893    483.3333 0.011035512
## 115       448         260         188 42989 0.010421271    477.3333 0.011103616
## 134       495         265         230 42707 0.011590606    465.3333 0.010895950
## 153       453         244         209 43525 0.010407812    436.6667 0.010032548
## 172       362         213         149 43400 0.008341014    399.6667 0.009208909
## 191       384         194         190 43257 0.008877176    382.6667 0.008846352
## 210       402         241         161 43110 0.009324983          NA          NA
##     pop_h       tem_h obt_h_ajust_m     tem_h_m pop_m      tem_mu obt_m_ajust_m
## 1   21391 0.014164836            NA          NA 20409 0.012837474            NA
## 20  21075 0.013428233      295.3333 0.014013444 20088 0.011051374      231.3333
## 39  20903 0.014352007      292.3333 0.013985233 19923 0.010540581      236.3333
## 58  21180 0.013881020      296.6667 0.014006925 20187 0.013721702      234.6667
## 77  21907 0.013511663      281.6667 0.012857382 20879 0.010393218      242.6667
## 96  22425 0.011371237      270.3333 0.012054998 21373 0.010948393      213.0000
## 115 22011 0.011812276      260.0000 0.011812276 20978 0.008961769      217.3333
## 134 21867 0.012118718      256.3333 0.011722382 20840 0.011036468      209.0000
## 153 22286 0.010948578      240.6667 0.010799007 21239 0.009840388      196.0000
## 172 22222 0.009585096      217.0000 0.009765098 21178 0.007035603      182.6667
## 191 22149 0.008758860      216.0000 0.009752133 21108 0.009001327      166.6667
## 210 22074 0.010917822            NA          NA 21036 0.007653546            NA
##         tem_m_m
## 1            NA
## 20  0.011515996
## 39  0.011862337
## 58  0.011624643
## 77  0.011622523
## 96  0.009965845
## 115 0.010360060
## 134 0.010028791
## 153 0.009228306
## 172 0.008625303
## 191 0.007895900
## 210          NA
tabela3<-subset(tabela2,faixa_idade=="_menor que 1 ano")

tabela3<-merge(tabela3,nascidos_vivos,by=("ano"),all.x=TRUE)

tabela3$tmi<-tabela3$obt_ajust_m/tabela3$nasc
tabela3$tmi_h<-tabela3$obt_h_ajust_m/tabela3$nasc_masc_ajust
tabela3$tmi_m<-tabela3$obt_m_ajust_m/tabela3$nasc_fem_ajust

ano4<-2010:2030
var1<-c(tabela3$tmi,rep(NA,9))*1000
var2<-c(tabela3$tmi_h,rep(NA,9))*1000
var3<-c(tabela3$tmi_m,rep(NA,9))*1000
var4<-as.data.frame(proj_ibge)$mort_infantil_total
var5<-as.data.frame(proj_ibge)$mort_infantil_homens
var6<-as.data.frame(proj_ibge)$mort_infantil_mulheres

data4<-data.frame(ano4,var1,var2,var3,var4,var5,var6)

p5<- ggplot(data4, aes(x=ano4)) +
  geom_line(aes(y=var1, col="SIM_geral"),linetype=1,size=1.2) +
  geom_line(aes(y=var2, col="SIM_homens"),linetype=1,size=1.2) +
  geom_line(aes(y=var3, col="SIM_mulheres"),linetype=1,size=1.2) +
  geom_line(aes(y=var4, col="Proj. IBGE_geral"),linetype=1,size=1.2) +
  geom_line(aes(y=var5, col="Proj. IBGE_homens"),linetype=1,size=1.2) +
  geom_line(aes(y=var6, col="Proj. IBGE_mulheres"),linetype=1,size=1.2) +
  labs(title="Taxa de Mortalidade Infantil por sexo e fonte de dados - DF - 2010-2030",
       y="TMI",x=element_blank()) +
  scale_linetype_manual(values = c(rep("solid", 3), rep("dashed", 3))) +
  scale_color_manual(name="",
                     values = c(
                       "SIM_geral"="gray1",
                       "SIM_homens"="gray20",
                       "SIM_mulheres"="gray40",
                       "Proj. IBGE_geral"="blue4",
                       "Proj. IBGE_homens"="blue",
                       "Proj. IBGE_mulheres"="deepskyblue1")) +
  # ylim(0,NA)+
  theme(legend.position="bottom",axis.text.x = element_text(angle = 90))

p5
## Warning: Removed 11 rows containing missing values (`geom_line()`).
## Removed 11 rows containing missing values (`geom_line()`).
## Removed 11 rows containing missing values (`geom_line()`).

png(filename = "Taxa de Mortalidade Infantil por sexo e fonte de dados - DF - 2010-2030.png",
    width = 15, height = 12,
    units = "cm",res = 1200)
p5
## Warning: Removed 11 rows containing missing values (`geom_line()`).
## Removed 11 rows containing missing values (`geom_line()`).
## Removed 11 rows containing missing values (`geom_line()`).
dev.off()
## png 
##   2
write_xlsx(data4,"Tabela  1g - Taxa de Mortalidade Infantil por sexo e fontes.xlsx")