Extraindo dados eleitorais no R

O pacote electionsbr oferece um conjunto de funções que possibilitam a extração de dados eleitorais diretamente da base de dados do Tribunal Superior Eleitoral (TSE). Com ele é possível obter dados de todas as eleições desde 1994 desagregados até por zona eleitoral. Além disso, é possível obter informações sobre filiação partidária, características dos eleitores de cada zona eleitoral e declaração patrimonial de todos os candidatos.

Para mostrar a funcionalidade do pacote, iremos utilizar os dados da última eleição federal, em 2018. Iremos separar apenas os votos para presidente e selecionar o partido - no caso a chapa - que recebeu mais votos em cada município.


elec_2018 = party_mun_zone_fed(2018, br_archive = TRUE) %>%
filter(DESCRICAO_CARGO == "Presidente" & NUM_TURNO == 1) %>%
group_by(CODIGO_MUNICIPIO) %>%
top_n(1, QTDE_VOTOS_NOMINAIS) %>%
mutate(CODIGO_MUNICIPIO = as.double(CODIGO_MUNICIPIO)) %>%
select(CODIGO_MUNICIPIO, SIGLA_PARTIDO)

O código utilizado como identificador de cada município é específico do TSE e é diferente do código IBGE padrão. Por isso, como iremos colocar em um mapa utilizando o pacote geobr, precisamos de uma tabela para conversão.

</pre>
tse_ibge_id <- read_csv("https://raw.githubusercontent.com/betafcc/Municipios-Brasileiros-TSE/master/municipios_brasileiros_tse.csv")

elec_2018 = left_join(elec_2018, tse_ibge_id, by = c("CODIGO_MUNICIPIO" = "codigo_tse"))
<pre>

 

Assim, fazemos o download dos mapas por município e estado e juntamos com a nossa base.

</pre>
mapa_muni = read_municipality(showProgress = FALSE)
mapa_state = read_state(showProgress = FALSE)

df <- left_join(mapa_muni, elec_2018, by = c("code_muni" = "codigo_ibge"))

Agora, podemos fazer o mapa com os dados, que mostram grande concentração espacial do voto.

 


ggplot() +
geom_sf(df, mapping = aes(fill = SIGLA_PARTIDO), colour = NA) +
geom_sf(mapa_state, mapping = aes(fill = NA)) +
scale_fill_manual(values=c( "#fff200", "#263272", "#c4122d")) +
theme_minimal() +
labs(title = "Eleição em 2018",
subtitle = "Partido mais votado por município na eleição presidencial em 2018")

Compartilhe esse artigo

Facebook
Twitter
LinkedIn
WhatsApp
Telegram
Email
Print

Comente o que achou desse artigo

Outros artigos relacionados

Simplificando análises de dados manuais do Excel usando o Python

Tratar e analisar dados no Excel pode ser um verdadeiro caos, mesmo que você precise fazer coisas simples como cruzar duas tabelas de dados. Uma solução melhor é o uso de scripts em Python, que possibilitam a automação de tarefas repetitivas e manuais. Neste artigo mostramos um exemplo simples, comparando o Excel versus Python.

Como automatizar o tratamento de dados feito no Excel usando o Python?

Segundo a pesquisa “State of Data Science”, profissionais de dados gastam 3 horas/dia (38% do tempo) apenas preparando os dados, antes mesmo de analisá-los. Neste artigo advogamos que este gasto de tempo pode ser drasticamente reduzido ao utilizar ferramentas open source, como Pandas e Python, para automatizar tarefas repetitivas que costumam ser feitas em Excel.

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.