R
Análise e tratamentode dados.
Utilizo R para manipulação de grandes bases, integração de diferentes fontes de dados, tratamento, análise estatística e construção de processos reprodutíveis.
PROJETO
Construção de base de empresas ativas
Desenvolvimento de um processo de tratamento e integração das bases públicas da Receita Federal, com o objetivo de construir uma base estruturada de empresas e estabelecimentos ativos no Espírito Santo.
Projeto histórico
O processo foi desenvolvido quando o acesso às bases utilizadas estava disponível. Atualmente, o acesso às bases da Receita Federal utilizadas neste projeto depende de autorização, portanto o código não pode ser executado atualmente da mesma forma.
VISÃO GERAL
Pipeline de dados
O processo integrava diferentes arquivos utilizando o CNPJ básico como chave, aplicava filtros e transformações e produzia uma base final estruturada.
Arquivos brutos
Filtragem
Integração
Tratamento
Base final
FONTES DE DADOS
Integração de diferentes bases
Estabelecimentos
Dados cadastrais dos estabelecimentos, situação cadastral, endereço, CNAEs, telefones e e-mail.
Empresas
Razão social, natureza jurídica, qualificação do responsável, capital social e porte.
Simples Nacional
Informações sobre opção pelo Simples Nacional e Microempreendedor Individual.
Sócios
Informações cadastrais e características dos sócios relacionados às empresas.
IMPLEMENTAÇÃO
Código do processo
Abaixo estão algumas das principais etapas do código utilizado para transformar os arquivos brutos em bases estruturadas.
Leitura dos estabelecimentos
Leitura dos arquivos brutos de estabelecimentos utilizando data.table::fread(), mantendo as variáveis inicialmente como character.
# Estabelecimentos
arquivos <- list.files(
pattern = "\\.ESTABELE"
)
arquivos
estab <- vector("list", length(arquivos))
for (i in seq_along(arquivos)) {
df <- fread(
arquivos[i],
colClasses = "character",
header = FALSE
)
nomes <- c(
"cnpj_basico",
"cnpj_ordem",
"cnpj_dv",
"matriz_filial",
"nm_fantasia",
"sit_cadastral",
"dt_sit_cadastral",
"motivo_sit_cadastral",
"nm_exterior",
"pais",
"dt_inic_atividade",
"cnae_principal",
"cnae_secundaria",
"tipo_logr",
"rua",
"numero",
"complemento",
"bairro",
"cep",
"uf",
"municipio",
"ddd1",
"telefone1",
"ddd2",
"telefone2",
"ddd_fax",
"fax",
"email",
"sit_especial",
"dt_sit_especial"
)
colnames(df) <- nomes
estab[[i]] <- df
}
estab <- bind_rows(estab)DECISÕES TÉCNICAS
Algumas escolhas do desenvolvimento
data.table para leitura
A função fread() foi utilizada para realizar a leitura dos arquivos de grande volume de forma eficiente.
Dados inicialmente como character
As colunas foram inicialmente carregadas como character, evitando conversões automáticas durante a leitura e permitindo controlar posteriormente o tratamento de cada variável.
CNPJ como chave de integração
O campo cnpj_basico foi utilizado como chave para relacionar as diferentes fontes de dados.
Processo reprodutível
Em vez de manipular manualmente cada arquivo, o processamento foi estruturado em loops e operações vetorizadas, permitindo repetir o processo para diferentes arquivos.
TECNOLOGIAS
RESULTADO
O processo permitia transformar múltiplos arquivos independentes em uma base consolidada, organizada e pronta para análises econômicas e construção de indicadores relacionados às empresas do Espírito Santo.
EXPLORAR