R Markdown

This is an R Markdown document. Markdown is a simple formatting syntax for authoring HTML, PDF, and MS Word documents. For more details on using R Markdown see http://rmarkdown.rstudio.com.

Vamos usar o pacote PNADcIBGE, cuja documentação está disponível no CRAN.

TAXA DE DESEMPREGO - MICRODADOS DA PNADc IBGE

Primeiro vamos definir o diretório de trabalho com o comando a seguir:

getwd()
## [1] "/home/dinilsonjr/Desktop/WF/R"

Em seguida precisamos instalar o programas listados abaixo e em seguida acioná-los para nossa seção de trabalho. O comando para instalar um programa no R é install.packages(‘nome do programa’). Os acionamos conforme abaixo:

library(PNADcIBGE)
library(convey)
library(survey)
## Loading required package: grid
## Loading required package: Matrix
## Loading required package: survival
## 
## Attaching package: 'survey'
## The following object is masked from 'package:graphics':
## 
##     dotchart
library(knitr)
library(ggplot2)

São muitos os temas e variáveis trabalhadas na PNADc. Como estamos aqui interessados apenas em calcular a taxa de desemprego (ou de desocupação), não precisaremos carregar toda a pesquisa para nossa área de trabalho.

Vamos então selecionar as seguintes variáveis para nosso estudo:

UF (ex.” Pernambuco”); Capital (ex.”Recife”); RM_RIDE (ex.”Município de Recife (PE)“);

VD4001(condição na força de trabalho); VD4002(condição de ocupação); VD4004A (subocupação habitual).

variaveis_selecionadas <- c("UF", "Capital", "RM_RIDE", "VD4001", "VD4002", "VD4004A")

Agora vamos usar a função get_pnadc do pacote PNADcIBGE para fazer a raspagem dos dados diretamente do site do IBGE.

PNADcBR <- get_pnadc(year = 2021, quarter = 3, vars = variaveis_selecionadas)

Note que o arquivo não é trazido como um data frame, mas sim como um objeto de design de amostragem complexa.

class(PNADcBR)
## [1] "svyrep.design"

Taxa de desemprego do Brasil

Usaremos agora a função svyratio do pacote survey para calcular a taxa de desemprego do Brasil.

txdesocup <- svyratio(~VD4002 == "Pessoas desocupadas",~VD4001 == "Pessoas na força de trabalho", PNADcBR, na.rm = T)
txdesocup
## Ratio estimator: svyratio.svyrep.design(~VD4002 == "Pessoas desocupadas", ~VD4001 == 
##     "Pessoas na força de trabalho", PNADcBR, na.rm = T)
## Ratios=
##                                 VD4001 == "Pessoas na força de trabalho"
## VD4002 == "Pessoas desocupadas"                                0.1264062
## SEs=
##             [,1]
## [1,] 0.001427623

Taxa de desemprego calculada de 12,64%, valor confirmado no site da Agência de Notícias do IBGE.

Taxa de desemprego de Pernambuco

Primeiro vamos definir, usando a função subset, uma PNADc só com dados de Pernambuco.

PNADcPE <- subset(PNADcBR, UF=="Pernambuco")

Agora vamos calcular a taxa de desemprego de Pernambuco como fizemos para o Brasil.

txdesocupPE <- svyratio(~VD4002 == "Pessoas desocupadas",~VD4001 == "Pessoas na força de trabalho", PNADcPE, na.rm = T)
txdesocupPE
## Ratio estimator: svyratio.svyrep.design(~VD4002 == "Pessoas desocupadas", ~VD4001 == 
##     "Pessoas na força de trabalho", PNADcPE, na.rm = T)
## Ratios=
##                                 VD4001 == "Pessoas na força de trabalho"
## VD4002 == "Pessoas desocupadas"                                0.1928086
## SEs=
##             [,1]
## [1,] 0.007008382

Taxa de desemprego em Pernambuco é 19,28% [confirmado].

Taxa de desemprego da Bahia

Primeiro definimos uma “PNADc da Bahia”.

PNADcBA <- subset(PNADcBR, UF=="Bahia")

E agora calculando a taxa de desemprego da Bahia.

txdesocupBA <- svyratio(~VD4002 == "Pessoas desocupadas",~VD4001 == "Pessoas na força de trabalho", PNADcBA, na.rm = T)
txdesocupBA
## Ratio estimator: svyratio.svyrep.design(~VD4002 == "Pessoas desocupadas", ~VD4001 == 
##     "Pessoas na força de trabalho", PNADcBA, na.rm = T)
## Ratios=
##                                 VD4001 == "Pessoas na força de trabalho"
## VD4002 == "Pessoas desocupadas"                                0.1873294
## SEs=
##            [,1]
## [1,] 0.00741979

Taxa de desemprego na Bahia é 18,73%.

Taxa de desemprego na Região Metropolitana do Recife (RMR)

Primeiro definindo uma “PNADc da RMR”.

PNADcRMR <- subset(PNADcPE, RM_RIDE=="Região Metropolitana de Recife (PE)")

Calculando a taxa de desemprego na RMR.

txdesocupRMR <- svyratio(~VD4002 == "Pessoas desocupadas",~VD4001 == "Pessoas na força de trabalho", PNADcRMR, na.rm = T)
txdesocupRMR
## Ratio estimator: svyratio.svyrep.design(~VD4002 == "Pessoas desocupadas", ~VD4001 == 
##     "Pessoas na força de trabalho", PNADcRMR, na.rm = T)
## Ratios=
##                                 VD4001 == "Pessoas na força de trabalho"
## VD4002 == "Pessoas desocupadas"                                0.2021286
## SEs=
##            [,1]
## [1,] 0.01101461

Taxa de desemprego na RMR é de 20,21% [não confirmado].

Taxas de desemprego por UF

Para calcular a taxa de desemprego para todas as UF de uma vez vamos usar a função svyby. Mas faremos a conta de maneira diferente. Primeiro encontramos o número de pessoas desocupadas em todos os estados, em seguida encontramos a força de trabalho nos estados. Dividimos o primeiro número pelo segundo e achamos a taxa de desemprego.

Para encontrar o total de desempregados por estados o comando é o seguinte:

desocupUF <- svyby(~VD4002 == "Pessoas desocupadas",
                   ~UF , PNADcBR, svytotal, na.rm = T)

O objeto desocupUF é um survey design. Vamos transoformá-lo em data frame.

desuf<- as.data.frame(desocupUF)
class(desuf)
## [1] "data.frame"

A coluna que nos interessa é a terceira.

desuf[,3]
##  [1]   69582.76   52128.62  264329.19   27624.58  474993.24   71044.72
##  [7]   81774.61  409385.80  172957.50  491681.81  221303.81  230797.20
## [13]  806016.25  231442.82  187643.43 1336358.60 1209678.39  214324.24
## [19] 1422033.77 3426209.83  483566.78  206852.67  512211.93  106746.23
## [25]  120124.48  375263.34  247313.21

Encontrando a força de trabalho por UF e os demais passos acima.

pessoasftUF <- svyby(~VD4001 == "Pessoas na força de trabalho",
                     ~UF , PNADcBR, svytotal, na.rm = T)
pftuf<-as.data.frame(pessoasftUF)
pftuf[,3]
##  [1]   896091.0   377840.8  1965659.3   261332.0  4004416.7   406486.4
##  [7]   757710.0  2726289.3  1450570.8  3952118.1  1502339.8  1597157.9
## [13]  4180396.6  1355168.1  1101608.6  7133735.4 11313965.2  2152899.6
## [19]  8941135.3 25613778.7  6072176.7  3923908.9  6085603.6  1404486.4
## [25]  1807407.2  3744588.3  1700964.6

Para encontrar a taxa de desemprego por UF dividimos uma coluna por outra.

txdesuf=desuf[,3]/pftuf[,3]*100 ### Calculando a taxa de desocupação por UF.
txdesuf
##  [1]  7.765145 13.796451 13.447355 10.570683 11.861734 17.477761 10.792336
##  [8] 15.016227 11.923409 12.440970 14.730609 14.450493 19.280856 17.078533
## [15] 17.033584 18.732943 10.691905  9.955143 15.904398 13.376433  7.963648
## [22]  5.271597  8.416781  7.600375  6.646232 10.021485 14.539586

Vamos montar um data frame com o valores de desemprego que calculamos e o nome das UFs.

Coluna com o nome dos estados:

UF<- desuf[,1] ### Coluna com os nomes dos estados.

Juntando as duas colunas e definindo o data frame final.

txu = data.frame(UF, txdesuf)

Vamos simplificar o nome da coluna da taxa de desemprego da tabela.

colnames(txu)[2] <- "desemprego"

Aqui apresentamos a tabela em RMarkdown a função kable do pacote knitr.

kable(txu, caption = "Taxa de desemprego por UF(%)")
Taxa de desemprego por UF(%)
UF desemprego
Rondônia 7.765145
Acre 13.796451
Amazonas 13.447355
Roraima 10.570683
Pará 11.861733
Amapá 17.477761
Tocantins 10.792336
Maranhão 15.016227
Piauí 11.923409
Ceará 12.440970
Rio Grande do Norte 14.730609
Paraíba 14.450494
Pernambuco 19.280856
Alagoas 17.078533
Sergipe 17.033584
Bahia 18.732943
Minas Gerais 10.691905
Espírito Santo 9.955143
Rio de Janeiro 15.904398
São Paulo 13.376432
Paraná 7.963648
Santa Catarina 5.271597
Rio Grande do Sul 8.416781
Mato Grosso do Sul 7.600375
Mato Grosso 6.646232
Goiás 10.021484
Distrito Federal 14.539586

Salvando a tabela em CSV em nosso PC.

write.csv(txu, "taxadesUF3tri21")

Gráfico

Gráfico usando o pacote ggplot2. Os argumentos da instrução abaixo são autodescritivos.

ggplot(txu, aes(y = txdesuf, x = UF)) +
  geom_bar(stat = "identity", fill = "tomato")+
  labs(title ="Taxa de desocupação por UF",
       subtitle = "3º trimestre de 2021", 
       caption = "Fonte: Elaboração própria com dados da PNADc- IBGE")+
  theme(plot.title = element_text(hjust = 0.5, face = "bold"))+
  theme(plot.subtitle = element_text(hjust = 0.5, face = "bold"))+
  theme(plot.caption = element_text(hjust = 0, face = "italic"))+
  xlab("UF") + 
  ylab("Taxa de desemprego (%)")+
  theme(axis.text.x = element_text(angle = 75, hjust = 1))