Desafio 2 - Manipulação de dados com dplyr

Instruções para Entrega

Data: 10/05

Formato: RScript (arquivo .R)

Via: e-mail com título “[FLS6397] - D2” para e .

Instruções para a atividade

Siga as instruções abaixo. Documente TODOS os seus passos em um script. Comente no seu script TODOS os seus passos e explique a si mesma(o) suas escolhas e estratégias. Colar pedaços de código de outras(os) colegas nesta atividade é permitido e peça ajuda se precisar. Mencione SEMPRE em comentários quando a solução encontrada não for sua. O seu código deve usar as funções e o estilo (o pipe %>%) da gramática do dplyr / tidyverse / tidy data.

As primeiras linhas do seu script devem conter suas informações pessoais como comentário, tal qual o modelo abaixo:

### nome <- "Fulano da Silva Sauro"
### programa <- "Mestrado em Paleontologia"
### n_usp <- 32165498
### data_entrega: "06/05/2019"

Parte 1 - Abrindo os dados

  1. Vamos fazer o download de dados eleitorais de CEPESPdata (dados limpos e organizados do TSE). Pode fazer o download usando o API de R, seguindo as instruções aqui ou pode buscar manualmente no site, baixar o arquivo e abrir em R. Em qualquer forma, vamos baixar duas tabelas separadas - uma tabela de candidatos (http://cepesp.io/consulta/candidatos) e uma tabela de votos (http://cepesp.io/consulta/votos). Precisamos os dados de prefeitos na agregação regional do município e por 2016.
    • Se baixar os arquivos do site direitamente, tenha que adicionar as colunas COD_MUN_IBGE, UF, NOME_MUNICIPIO e SIGLA_UE manualmente para o banco de dados de votos com a opção de ‘Selectionar Colunas’, e as colunas DESCRICAO_SEXO, NOME_CANDIDATO e DESCRICAO_GRAU_INSTRUCAO para o banco de dados de candidatos.

2 - Usando os verbos de dplyr/tidyverse, nomeie estes data.frames resultados e candidatos. Filtre as tabelas para escolher os três estados do sul (UF e SIGLA_UF).

3 - Filtre as tabelas para incluir apenas os dados do primeiro turno da eleição (NUM_TURNO).

Parte 2 - Calcule percentagens de votação

  1. Usando as funções group_by e mutate, adicione uma nova coluna no data.frame resultados que contém o total de votos (QTDE_VOTO) por município (COD_MUN_IBGE).

  2. Agora, crie mais uma coluna que contém o percentagem de voto do candidato no município em relação ao total de votos recebdidos por todos os candidatos no município.

Parte 3 - Integrando os bancos de dados

  1. Antes de combinando os dois bancos de dados, escolhe apenas as colunas seguintes da tabela resultados para torná-lo mais fácil de usar: NUMERO_CANDIDATO,NOME_MUNICIPIO,SIGLA_UE,QTDE_VOTOS e as colunas de total de votos por município e percentagem de votos no município que você criou.

  2. Vamos combinar os data.frames candidatos e resultados usando alguma função do tipo join apropriada. Note que precisamos usar duas colunas-chaves - NUMERO_CANDIDATO e SIGLA_UE - porque NUMERO_CANDIDATO é apenas um identificador único para candidatos dentro do mesmo município. SIGLA_UE é um identificador único para cada eleição municipal diferente.

Parte 4 - Produzindo tabelas de resumo

  1. Usando a sua data.frame combinada, crie uma tabela que mostra o candidato para prefeito com o maior percentagem de voto em cada um dos três estados. Sua tabela deve nos informar o estado (SIGLA_UF), o nome de candidato (NOME_CANDIDATO) e o porcentagem de voto para cada candidato.

  2. Crie uma tabela que compara a percentagem média de voto para candidatos do cada sexo (DESCRICAO_SEXO). Qual sexo recebe mais apoio?

  3. Crie uma tabela que compara a percentagem média de voto para candidatos do cada sexo e por estado. Em qual estado a diferença entre homens e mulheres é o menor?

  4. Crie uma tabela que compara a média percentagem de voto por grau de escolaridade de candidatos (DESCRICAO_GRAU_INSTRUCAO).

  5. Qual candidato foi eleito (DESC_SIT_TOT_TURNO) no município (NOME_MUNICIPIO) de Guaramirim no estado de Santa Catarina (SIGLA_UF)? Identifique esse candidato e o partido dele/dela, e o percentagem do voto que ele/ela recebeu.