Dando sequência ao post anterior, vamos analisar outra base de dados. Ou outras bases de dados?
Dessa vez, falaremos dos microdados do RAIS e CAGED. Vamos?

Bases do Ministério do Trabalho

O Ministério do Trabalho (MTb) permite que o usuário acesse os microdados de duas bases muito interessantes: RAIS e CAGED. Bom, além de serem mais dois elementos na “sopa de letrinhas” de microdados brasileiros, o que são exatamente esses dados?
Vejamos!

RAIS

O Relatório Anual de Informações Sociais (RAIS) é um relatório enviado anualmente por todas pessoas jurídicas para o MTb. Nele, constam o número de empregados da pessoa jurídica no dia 31/12, além da informação sobre admissões e demissões. Isso permite que o ministério elabore um “censo” do emprego formal no país.

O RAIS se divide em duas tabelas principais: vínculos e estabelecimentos.

Vínculos

Esta tabela traz informações sobre surprise, surprise relações trabalhistas, i.e., trabalhadores. Contém informações como data de admissão, data de demissão, aposentadoria, tipo de contrato de trabalho, cor/raça do empregado, rendimento, etc. Pode ser muito relevante para analisar questões sobre distribuição funcional de renda, por exemplo, e é uma excelente fonte de dados sobre o mercado de trabalho, especialmente quando aliada à PNADC.

Estabelecimentos

Por sua vez, esta tabela contém informações como a natureza jurídica do estabelecimento, opção pelo Simples, tamanho do estabelecimento, etc. Este tipo de informações pode revelar muito sobre a dinâmica econômica, especialmente se comparamos os setores econômicos do país.

Cuidado ao usar os dados anuais!
Como o número de estabelecimentos que faz a declaração do RAIS varia anualmente, pode ser difícil analisar as variações na dinâmica do emprego.
Uma ideia é usar uma amostra longitudinal de empresas que declaram os dados. Assim, as variações podem ser avaliadas sem tanta influência do processo de envio do relatório.

CAGED

O Cadastro Geral de Empregados e Desempregados (CAGED) é um banco de dados composto por relatórios mensais enviados pelas empresas, informando o Governo Federal a respeito das admissões e demissões realizadas. Embora tenha sido criado para ajudar no processo de análise do seguro-desemprego, esse conjunto de dados acabou se tornando uma grande fonte nos estudos empíricos sobre mercados de trabalho no Brasil.
De fato, com os insumos providenciados por essa base de dados, é possível calcular o índice mensal de empregos formais e taxa de rotatividade, por exemplo.
Eis algumas variáveis nessa tabela: tipo de movimentação (e.g., demissão com/sem justa causa, aposentadoria), tipo de estabelecimento, cor/raça do trabalhador, etc.

Se você ainda precisa de mais informações a respeito, sugiro esses dois links: Introdução às Bases de Dados RAIS e CAGED e essa página do MEC(?)1.

Na prática

Esse procedimento pode ser muito lento, dependendo da sua conexão com a internet e seu computador.

Para facilitar o processo de baixar e montar a base de dados, escrevi esse script com três funções para facilitar esse procedimento:

  1. catalog_mtps: lista os dados do site em um catálogo;
  2. datavault_mtps: baixa os arquivos de dados brutos para um diretório local específico;
  3. build_mtps: constrói a base de dados

A função datavault_mtps é opcional, mas ajuda bastante se você não queira repetir os downloads toda vez que precisar montar a base de novo. O bloco de código abaixo mostra como fazer essa tarefa:

# instala libraries
libs <- c("DBI", "MonetDBLite" , "downloader" , "archive" , "dplyr" , "dbplyr" )
libs.novas <- libs[ !( libs %in% installed.packages()[ , "Package" ] ) ]
if( length( libs.novas ) ) install.packages( libs.novas )

# carrega libraries
library(DBI)
library(MonetDBLite)

# define diretórios
output_dir <- file.path( tempdir() , "MTPS" ) 
datavault_dir <- file.path( tempdir() , "MTPS_DV" ) 

# carrega funções
downloader::source_url( "https://raw.githubusercontent.com/guilhermejacob/guilhermejacob.github.io/master/scripts/mtps.R" , prompt = FALSE )

# cria catálogo de dados
catalog <- catalog_mtps( output_dir = output_dir )

# cria datavault
# esse passo é opcional!
catalog <- datavault_mtps( catalog = catalog, datavault_dir = datavault_dir )

# limita apenas para bases de 2016
catalog <- subset( catalog , year == 2016 )

# constrói base de dados
build_mtps( catalog = catalog )

Caso você já conheça linguagem SQL, pode conectar direto à base de dados e enviar as queries.
Caso contrário, não se desespere! Se você conhece um pouco do dplyr, já é o suficiente para analisar utilizando o seu “pacote irmão” dbplyr. Vejamos:

# carrega os pacotes necessários
library( DBI )
library( MonetDBLite )
library( dplyr )
library( dbplyr )

# conecta com a base de dados
con <- dbConnect( MonetDBLite() , file.path( output_dir , "MonetDB" ) )

# lista tabelas na base
dbListTables( con )

# cria referência para tabela de vínculos do caged
caged <- tbl( con , "caged_2016" )

# dá uma olhada em como a tabela parece
caged

# limita para registros de 2016
caged <- caged %>% filter( ano_declarado == 2016 )

# conta o número de registros na tabela
caged %>% 
  summarise( nobs = n() ) 
# # Source:   lazy query [?? x 1]
# # Database: sqlite 3.19.3 
#       nobs
#      <int>
# 1 29715447

# número de registros
# por tipo de movimentação
caged %>% 
  group_by( admitidos_desligados ) %>% 
  summarise( nobs = n() ) 
# # Source:   lazy query [?? x 2]
# # Database: sqlite 3.19.3 
#   admitidos_desligados     nobs
#                  <dbl>    <int>
# 1                    1 14172042
# 2                    2 15543405

# Disconecta da base de dados
dbDisconnect( con , shutdown = TRUE )

Mas será que esses números fazem sentido? Vamos comparar com os dados do site:

Resultados do BI MTE

Acertamos!

Próximos passos

Acho que isso dá uma ideia das possibilidades que essas bases de dados nos dão.
Porém, existem outras bases de dados interessantes. O que vocês acham de analisar microdados de migração? Acho que pode virar assunto de um post futuro.

“Ah, mas hoje não tem vídeo?”

Tem, sim!
A trilha sonora de hoje é Casuarina tocando Caymmi:


  1. Também não sei o motivo desta informação estar no site do MEC e não do MTb, mas segue o baile.↩︎