electionsBR: um pacote no R para baixar e limpar dados eleitorais do TSE

18 Aug 2016


Nosso pacote para baixar e limpar dados eleitorais do website do TSE, desenvolvido conjuntamente por Denisson Silva, Beatriz Costa e eu, foi publicado no Comprehensive R Archive Network (CRAN): o electionsBR. Basicamente, ele contém uma série de funções para extrair e limpar a maioria dos dados disponíveis no Repositório de Dados Eleitorais do TSE, deixando-os prontos para uso.

O electionsBR vem para facilitar a vida de quem trabalha ou precisa consultar estes dados do TSE de duas formas. Primeiro, ele fornece um conjunto de funções para baixar a maioria dos dados do TSE, que são então armazenados diretamente num objeto na memória do R – sem a necessidade de abrir o website do TSE, deszipar, ler e limpar cada um dos arquivos individuais. Segundo, ele faz isso em poucos segundos e, além disso, já lida com os principais problemas nas bases do TSE: como é notório entre os usuários do Repositório, os arquivos do TSE frequentemente vêm com problemas de enconding (i.e. acentos tornam-se caracteres inelegíveis), incompatibilidade entre arquivos (i.e. mais ou menos variáveis, células vazias) e informações mal formatadas (i.e. variáveis numéricas contêm caracteres não-numéricos).Com ele, portanto, é possível baixar rapidamente, e sem problemas, os principais dados eleitorais do TSE.

Usando o pacote

Apenas duas coisas são necessárias para usar o pacote: uma versão do R superior a 2.1 (>= 2.1) e conexão com a internet. Para instalar a versão estável dele no CRAN, basta digitar no console:

install.packages("electionsBR")

Também é possível instalar as versões pré-release direto do GitHub (onde também está disponível uma pequena introdução ao pacote, em inglês):

if (!require("devtools")) install.packages("devtools")
devtools::install_github("silvadenisson/electionsBR")

O pacote electionsBR possui dez funções básicas para baixar cinco tipos de dados diferentes. São elas:

Para baixar os dados sobre os candidatos que disputaram as eleições nacionais de 2002, por exemplo, basta executar o seguinte código:

# Carrega o pacote
library(electionsBR)

# Baixa os dados
dados <- candidate_fed(year = 2002)
## Processing the data...Done

Todas as funções funcionam da mesma forma: o único argumento que deve ser preenchido pelo usuário é o ano do pleito (year), que deve ser introduzido como integer (e.g., 2002, 2006, 1996). O objeto resultante é um data.frame que contém diversas variáveis (para uma descrição detalhada de cada uma, ver a documentação do pacote no CRAN).

Algumas notas finais

É importante ressaltar que este pacote é resultado de alguns projetos de pesquisa em andamento no Centro de Estudos Legislativos (CEL), do qual o Denisson, a Bia e eu fazemos parte. Ao ter de repetir diversas vezes a tarefa de baixar, descompactar, abrir e unir todas as bases do TSE, achamos uma boa ideia criar este pacote para facilitar a nossa vida. Mas, como efeito final, também possibilitamos que outras pessoas consultem os mesmos dados facilmente.

Como esta é a primeira versão estável do pacote, críticas e sugestões para melhorá-lo são bem-vindas.


« Uma análise de sentimentos dos tweets da Dilma Rousseff
electionsBR: analisando a apuração das eleições para a Câmara dos Deputados »