Hackeando o R: acessando dados eleitorais

No Hackeando o R de hoje, iremos dar uma olhada em um pacote que facilita a obtenção de dados das eleições brasileiras, importando dados direto do TSE com variáveis interessantes para a análise de dados. O pacote {electionsBR} oferece diversas funções que facilitam a obtenção desses dados. No post de hoje, iremos investigar as funções do pacote.

O pacote oferece uma sintaxe simples para o uso de suas funções. Como argumento, necessitam somente do ano de interessante, e se houver, a sigla do estado de interesse.


# install.packages("electionsBR)
library(electionsBR)
library(tidyverse)

Para saber como as funções utilizam as siglas das unidades federativas, pode utilizar a seguinte função.

# Retorna um vetor de siglas dos estados
uf_br()

As funções party_mun_zone_fed e party_mun_zone_local, coleta os dados eleitorais por partidos, desagregados por eleitores. A primeira função coleta dados das eleições federais, enquanto a segunda, importa dados das eleições locais.

# coleta os dados das eleições federais

election_fed <- party_mun_zone_fed(2018)

election_fed %>%
select(DESCRICAO_ELEICAO, DESCRICAO_CARGO, NOME_PARTIDO, QTDE_VOTOS_NOMINAIS) %>%
filter(DESCRICAO_CARGO == "Senador") %>%
group_by(NOME_PARTIDO) %>%
summarise(soma_votos = sum(QTDE_VOTOS_NOMINAIS)) %>%
arrange(desc(soma_votos)) %>%
slice(1:10) %>%
ggplot(aes(x = NOME_PARTIDO, y = soma_votos,
fill = NOME_PARTIDO,
label = soma_votos))+
geom_bar(stat = "identity")+
geom_label(color = "black")+
labs(title = "Quantidade de votos nominais em Senadores por partidos",
subtitle = "10 maiores somas de votos em 2018",
x = "",
y = "",
caption = "Elaborado por analisemacro.com.br com dados do TSE")+
theme_minimal()+
theme(legend.position = "none",
axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1))


# Coleta os dados das eleições municipais

election_mun <- party_mun_zone_local(2020)

election_mun %>%
select(DESCRICAO_CARGO, NOME_PARTIDO, QTDE_VOTOS_NOMINAIS) %>%
filter(DESCRICAO_CARGO == "Prefeito") %>%
group_by(NOME_PARTIDO) %>%
summarise(soma_votos = sum(QTDE_VOTOS_NOMINAIS)) %>%
arrange(desc(soma_votos)) %>%
slice(1:10) %>%
ggplot(aes(x = NOME_PARTIDO, y = soma_votos,
fill = NOME_PARTIDO,
label = soma_votos))+
geom_bar(stat = "identity")+
geom_label(color = "black")+
labs(title = "Quantidade de votos nominais em Prefeitos por partidos",
subtitle = "10 maiores somas de votos em 2020",
x = "",
y = "",
caption = "Elaborado por analisemacro.com.br com dados do TSE")+
theme_minimal()+
theme(legend.position = "none",
axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1))


A função voter_profile, importa um data frame do dados do perfil dos eleitores agregados por estado, cidade e zona eleitoral

Outra função como vote_mun_zone_fed, oferece dados das eleições federais desagregadas por cidades e zonas eleitorais

Para detalhes sobre os votos, utiliza-se a função details_mun_zone_local.


# Coleta os dados do perfil dos eleitores

voters <- voter_profile(2018)

# Coleta os dados das eleições locais por partidos

vote_zone <- vote_mun_zone_fed(2018, uf = "MG")

# Coleta os detalhes dos votos das eleiçoes locais

details <- details_mun_zone_local(2020, uf = "MG")

* Ao utilizar o pacote, se certifique da configuração de sua máquina, algumas funções do pacote podem importar grande quantidade de dados.

________________________

(*) Quer aprender mais sobre a linguagem R e como construir gráficos? confira nosso Curso de Introdução ao R para análise de dados.

________________________

 

Compartilhe esse artigo

Facebook
Twitter
LinkedIn
WhatsApp
Telegram
Email
Print

Comente o que achou desse artigo

Outros artigos relacionados

Criando operações SQL com IA Generativa no R com querychat

No universo da análise de dados, a velocidade para obter respostas é um diferencial competitivo. Frequentemente, uma simples pergunta de negócio — “Qual foi nosso produto mais vendido no último trimestre na região Nordeste?” — inicia um processo que envolve abrir o RStudio, escrever código dplyr ou SQL, executar e, finalmente, obter a resposta. E se pudéssemos simplesmente perguntar isso aos nossos dados em português, diretamente no nosso dashboard Shiny?

Dashboard Financeiro com IA e Shiny Python: Análise de Dados Abertos da CVM

Este artigo apresenta um tutorial completo sobre como construir uma ferramenta de análise financeira de ponta. Utilizando Shiny for Python, demonstramos a automação da coleta de dados das Demonstrações Financeiras Padronizadas (DFP) da CVM e o tratamento dessas informações com Pandas. O ponto alto do projeto é a integração da IA Generativa do Google Gemini, que atua como um assistente de análise, interpretando os dados filtrados pelo usuário e fornecendo insights contábeis e financeiros em tempo real. O resultado é um dashboard dinâmico que democratiza a análise de dados complexos e acelera a tomada de decisão.

Econometria, ML ou IA para previsão da PMS?

Prever a Pesquisa Mensal de Serviços (PMS/IBGE) é um desafio por natureza: trata-se de uma série mensal, sujeita a volatilidade e choques que vão de fatores sazonais a mudanças estruturais no setor. Para enfrentar esse problema, realizamos um exercício de comparação entre três abordagens de modelagem: econometria tradicional (ARIMA), machine learning (XGBoost) e inteligência artificial (TimeGPT).

Boletim AM

Receba diretamente em seu e-mail gratuitamente nossas promoções especiais e conteúdos exclusivos sobre Análise de Dados!

Boletim AM

Receba diretamente em seu e-mail gratuitamente nossas promoções especiais e conteúdos exclusivos sobre Análise de Dados!

como podemos ajudar?

Preencha os seus dados abaixo e fale conosco no WhatsApp

Boletim AM

Preencha o formulário abaixo para receber nossos boletins semanais diretamente em seu e-mail.