Introdução

Nesta atividade o objetivo principal é exercitar os conceitos de correlação e o uso dos coeficientes. Nesse exercício vamos analisar o engajamento dos congressistas no twitter.

library(tidyverse)
## ── Attaching packages ─────────────────────────────────────────────── tidyverse 1.3.0 ──
## ✓ ggplot2 3.3.0     ✓ purrr   0.3.3
## ✓ tibble  2.1.3     ✓ dplyr   0.8.5
## ✓ tidyr   1.0.2     ✓ stringr 1.4.0
## ✓ readr   1.3.1     ✓ forcats 0.5.0
## ── Conflicts ────────────────────────────────────────────────── tidyverse_conflicts() ──
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()
library(ggbeeswarm)
library(here)
## here() starts at /cloud/project
theme_set(theme_bw())

Os dados

Os dados que utilizaremos na análise são referentes à atividade de congressistas no Twitter. A seguir está o código com a leitura e a filtragem realizada sobre os dados para remover dados incompletos, (com NA) com o objetivo de melhorar e facilitar nossa análise.

congressistas = read_csv("data/atividade-por-perfil-20190322.csv")
## Parsed with column specification:
## cols(
##   id_parlamentar = col_double(),
##   casa = col_character(),
##   nome_eleitoral = col_character(),
##   partido = col_character(),
##   UF = col_character(),
##   twitter = col_character(),
##   seguidores = col_double(),
##   segue = col_double(),
##   n_proprio = col_double(),
##   n_retweet = col_double(),
##   engaj_total = col_double(),
##   engaj_total_proprio = col_double(),
##   engaj_total_retweet = col_double(),
##   engaj_mediano = col_double(),
##   engaj_mediano_proprio = col_double(),
##   engaj_mediano_retweet = col_double(),
##   engaj_max = col_double(),
##   engaj_max_proprio = col_double(),
##   engaj_max_retweet = col_double()
## )
congressistas = congressistas %>%
  filter(!is.na(seguidores))

glimpse(congressistas)
## Observations: 370
## Variables: 19
## $ id_parlamentar        <dbl> 204528, 178836, 160559, 204545, 204501, 204544,…
## $ casa                  <chr> "câmara", "câmara", "câmara", "câmara", "câmara…
## $ nome_eleitoral        <chr> "ADRIANA VENTURA", "ALAN RICK", "ALCEU MOREIRA"…
## $ partido               <chr> "NOVO", "DEM", "MDB", "PSL", "PT", "PSL", "DEM"…
## $ UF                    <chr> "SP", "AC", "RS", "MG", "SP", "SP", "SP", "SP",…
## $ twitter               <chr> "adrianasounovo", "Alan_Rick", "Alceu_Moreira",…
## $ seguidores            <dbl> 4652, 3983, 6370, 464, 6447, 161745, 1134, 1470…
## $ segue                 <dbl> 315, 995, 434, 267, 3253, 2015, 140, 1035, 41, …
## $ n_proprio             <dbl> 99, 49, 214, 39, 346, 830, 58, 485, 1, 201, 290…
## $ n_retweet             <dbl> 9, 1, 30, 4, 100, 169, 15, 204, 1, 95, 45, 50, …
## $ engaj_total           <dbl> 7090, 4286, 6852, 10231, 69348, 566011, 30, 112…
## $ engaj_total_proprio   <dbl> 6701, 284, 2239, 186, 47967, 320063, 23, 89409,…
## $ engaj_total_retweet   <dbl> 389, 4002, 4613, 10045, 21381, 245948, 7, 22842…
## $ engaj_mediano         <dbl> 26.5, 4.0, 8.0, 4.0, 16.5, 134.0, 0.0, 49.0, 1.…
## $ engaj_mediano_proprio <dbl> 22.5, 4.0, 8.0, 4.0, 12.0, 60.0, 0.0, 27.0, 0.5…
## $ engaj_mediano_retweet <dbl> 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.5, 0.…
## $ engaj_max             <dbl> 1031, 4002, 4227, 8171, 12335, 20348, 4, 3643, …
## $ engaj_max_proprio     <dbl> 1031, 38, 136, 14, 12335, 7271, 4, 3643, 1, 183…
## $ engaj_max_retweet     <dbl> 99, 4002, 4227, 8171, 8623, 20348, 2, 3302, 1, …

A primeira vista podemos destacar alguns atributos importantes dos nossos dados, o número de seguidores e número de pessoas que seguem o parlamentar, a unidade federativa (UF) ou estado e o partido. Esses são os atributos que mais utilizaremos adiante.

Análises

O gráfico abaixo busca representar a relação entre os atributos seguidores e segue.

congressistas %>%
  ggplot(mapping = aes(x = segue, y = seguidores)) +
  geom_point() + 
  labs(title = "Relação entre os atributos seguidores e segue", x = "Segue", y = "Seguidores")

Como os dados estão muito concentrados no canto inferior esquerdo do gráfico, não conseguimos extrair muitas informações, apenas que há alguns pontos extremos, para melhor nossa visualização vamos utilizar uma escala logarítmica.

O gráfico abaixo representa a mesma relação, no entanto, agora utilizando escalas logarítmicas, para possibilitar a extração de mais informações sobre os dados.

congressistas %>%
  filter(segue > 0) %>%
  ggplot(mapping = aes(x = segue, y = seguidores, color = partido)) +
  geom_point() +
  scale_y_log10() + 
  scale_x_log10() + 
  labs(title = "Relação Seguidores x Segue em escala logarítmica", x = "Segue", 
       y = "Seguidores")

A relação acima não parece ser uma relação linear, aparentemente a relação é positiva e tem um força média, pois podemos ver que embora tenha uma certa concentração de pontos, ainda há bastante pontos dispersos.

Abaixo podemos ver os resultados dos coeficiantes de correlação com os dados do gráfico acima. Utilizei os coeficientes de Spearman e de Kendall, pois a relação não parece ser linear.

congressistas %>%
  summarise( spearman = cor(log(segue), log(seguidores), method = "spearman"),
  kendall = cor(log(segue), log(seguidores), method = "kendall"))
## # A tibble: 1 x 2
##   spearman kendall
##      <dbl>   <dbl>
## 1    0.388   0.271

Pelos resultados obtidos podemos ver que realmente a relação tem um coeficiente baixo, indicando que a correlação é fraca e não linear.

Análise por região

Vamos agora analisar nossa relação por região para dar mais atenção aos estados e poder conseguir informações que antes não estavam claras.

Região Sul

congressistas %>%
  filter(UF %in% c("PR", "SC", "RS"), segue > 0) %>%
  ggplot(mapping = aes(x = segue, y = seguidores, color = UF)) +
  geom_point() +
  facet_wrap(~ UF) +
  scale_y_log10() +
  scale_x_log10() +
  labs(title = "Relação entre os atributos seguidores e segue", x = "Segue", 
       y = "Seguidores", subtitle = "Região Sul")

Ao analisar o gráfico acima, podemos ver que a relação nos estados da região sul parece ser fraca e não linear, pois os pontos estão muito dispersos.

congressistas %>%
  filter(UF %in% c("PR", "SC", "RS"), segue > 0) %>%
  group_by(UF) %>%
  summarise(pearson = cor(log(segue), log(seguidores), method = "pearson"), 
  spearman = cor(log(segue), log(seguidores), method = "spearman"),
  kendall = cor(log(segue), log(seguidores), method = "kendall") )
## # A tibble: 3 x 4
##   UF    pearson spearman kendall
##   <chr>   <dbl>    <dbl>   <dbl>
## 1 PR      0.487    0.564   0.387
## 2 RS      0.388    0.343   0.237
## 3 SC      0.222    0.336   0.2

Os resultados dos coeficientes de correlação reforçam nossa análise com base na visualização grafica dos dados, os valores baixos dos coeficientes reforçam a observação de que as relações são fracas e não lineares na região sul.

Região Nordeste

congressistas %>%
  filter(UF %in% c("PB", "CE", "RN", "PE", "AL", "SE", "MA", "PI", "BA"), segue > 0) %>%
  ggplot(mapping = aes(x = segue, y = seguidores, color = UF)) +
  geom_point() +
  facet_wrap(~ UF) +
  scale_y_log10() +
  scale_x_log10() +
  labs(title = "Relação entre os atributos seguidores e segue", x = "Segue", 
       y = "Seguidores", subtitle = "Região Nordeste")

A partir da visualização dos dados acima podemos destacar dentre os estados do Nordeste, o CE e o RN que aparentemente possuem as relações mais fracas, com maior dispersão dos pontos. O estado que parece apresentar a relação mais forte e mais linear é a PB, mas também se destacam os estados da BA e do MA e nesses três estados de destaque a relação é positiva.

congressistas %>%
  filter(UF %in% c("PB", "CE", "RN", "PE", "AL", "SE", "MA", "PI", "BA"), segue > 0) %>%
  group_by(UF) %>%
  summarise(pearson = cor(log(segue), log(seguidores), method = "pearson"), 
  spearman = cor(log(segue), log(seguidores), method = "spearman"),
  kendall = cor(log(segue), log(seguidores), method = "kendall") )
## # A tibble: 9 x 4
##   UF    pearson spearman kendall
##   <chr>   <dbl>    <dbl>   <dbl>
## 1 AL     0.276     0.321  0.143 
## 2 BA     0.634     0.608  0.368 
## 3 CE    -0.0102    0     -0.0256
## 4 MA     0.718     0.578  0.429 
## 5 PB     0.842     0.619  0.429 
## 6 PE     0.521     0.427  0.345 
## 7 PI     0.565     0.429  0.286 
## 8 RN     0.0401    0.257  0.2   
## 9 SE    -0.385    -0.486 -0.333

Os resultados acima dos coeficientes de correlação nos estados do Nordeste reforçam a nossa observação do gráfico, na qual percebemos que na PB a relação era mais forte e linear que nos outros estados da região. Além disso, também reforça que a relação é muito fraca nos estados do CE e do RN.

Região Sudeste

congressistas %>%
  filter(UF %in% c("MG", "SP", "RJ", "ES"), segue > 0) %>%
  ggplot(mapping = aes(x = segue, y = seguidores, color = UF)) +
  geom_point() +
  facet_wrap(~ UF) +
  scale_y_log10() +
  scale_x_log10() +
  labs(title = "Relação entre os atributos seguidores e segue", x = "Segue", 
       y = "Seguidores", subtitle = "Região Sudeste")

Com base no gráfico acima podemos perceber que a relação é positiva em todos os estados e que parece ser mais forte e linear nos estados do RJ e de MG, enquanto que no estado de SP embora pareça linear, sua força parece ser média. O estado do ES é o que aparenta ter a relação mais fraca e mais dispersa na região.

congressistas %>%
  filter(UF %in% c("MG", "SP", "RJ", "ES"), segue > 0) %>%
  group_by(UF) %>%
  summarise(pearson = cor(log(segue), log(seguidores), method = "pearson"), 
  spearman = cor(log(segue), log(seguidores), method = "spearman"),
  kendall = cor(log(segue), log(seguidores), method = "kendall") )
## # A tibble: 4 x 4
##   UF    pearson spearman kendall
##   <chr>   <dbl>    <dbl>   <dbl>
## 1 ES      0.420    0.262   0.286
## 2 MG      0.540    0.482   0.339
## 3 RJ      0.554    0.589   0.404
## 4 SP      0.212    0.175   0.111

Os resultados dos coeficientes de correlação reforçaram a observação de que os estados de MG e do RJ possuem as correlações mais fortes e mais lineares da região. Entretanto os coeficientes não corroboram com a observação feita de que o ES é o estado com a relação mais fraca, os resultados dos coeficientes nos levam a crer que o estado com a relação mais fraca seja SP.

Região Centro-Oeste

congressistas %>%
  filter(UF %in% c("MT", "GO", "MS", "DF"), segue > 0) %>%
  ggplot(mapping = aes(x = segue, y = seguidores, color = UF)) +
  geom_point() +
  facet_wrap(~ UF) +
  scale_y_log10() +
  scale_x_log10() +
  labs(title = "Relação entre os atributos seguidores e segue", x = "Segue", 
       y = "Seguidores", subtitle = "Região Centro-Oeste")

Analisando o gráfico acima podemos destacar o estado de GO que apresenta uma relação linear, forte e negativa muito clara. O estado com maior dispersão é o MS, ele possui alguns pontos extremos e a relação aparenta ser negativa e fraca nele, enquanto que nos estados do MT e no DF a relação parece ser positiva, linear e forte.

congressistas %>%
  filter(UF %in% c("MT", "GO", "MS", "DF"), segue > 0) %>%
  group_by(UF) %>%
  summarise(pearson = cor(log(segue), log(seguidores), method = "pearson"), 
  spearman = cor(log(segue), log(seguidores), method = "spearman"),
  kendall = cor(log(segue), log(seguidores), method = "kendall") )
## # A tibble: 4 x 4
##   UF    pearson spearman kendall
##   <chr>   <dbl>    <dbl>   <dbl>
## 1 DF      0.764    0.75    0.611
## 2 GO     -0.728   -0.571  -0.357
## 3 MS      0.482    0.309   0.2  
## 4 MT      0.736    0.857   0.714

Os coeficientes de correlação encontrados para os estados da Região Centro-Oeste corroboram com nossas observações anteriores, como a existência de uma relação negativa e forte no estado de GO. Além de reforçar a observação de que o estado do MS tem a relação mais fraca da região.

Região Norte

congressistas %>%
  filter(UF %in% c("AM", "AC", "PA", "RO", "RR", "TO", "AP"), segue > 0) %>%
  ggplot(mapping = aes(x = segue, y = seguidores, color = UF)) +
  geom_point() +
  facet_wrap(~ UF) +
  scale_y_log10() +
  scale_x_log10() +
  labs(title = "Relação entre os atributos seguidores e segue", x = "Segue", 
       y = "Seguidores", subtitle = "Região Norte")

Com base no gráfico que representa os estados da Região Norte, podemos dizer que o estado com a relação mais linear e mais forte é o AM, além dele os estados do AC e do AP também se destacam. Uma observação interessante é que o único estado com uma relação negativa é RR, essa relação parece ser forte e linear.

congressistas %>%
  filter(UF %in% c("AM", "AC", "PA", "RO", "RR", "TO", "AP"), segue > 0) %>%
  group_by(UF) %>%
  summarise(pearson = cor(log(segue), log(seguidores), method = "pearson"), 
  spearman = cor(log(segue), log(seguidores), method = "spearman"),
  kendall = cor(log(segue), log(seguidores), method = "kendall") )
## # A tibble: 7 x 4
##   UF    pearson spearman kendall
##   <chr>   <dbl>    <dbl>   <dbl>
## 1 AC      0.776    0.486   0.333
## 2 AM      0.815    0.85    0.722
## 3 AP      0.685    0.314   0.2  
## 4 PA      0.586    0.473   0.309
## 5 RO      0.495    0.500   0.400
## 6 RR     -0.689   -0.700  -0.600
## 7 TO      0.420    0.357   0.143

Os coeficientes encontrados para os estados da Região Norte reforçam nossas análises visuais, pois o estado do AM tem o maior coeficiente o que reforça a observação de qeu ele e´o estado com a relação mais linear e mais forte na região. Destacamos também o resultado do coeficiente para o estado de RR que reforçou a análise feita de que ele é o único estado da região com uma relação negativa.

Conclusão

É possível conlcuir ao final da análise que a relação entre a quantidade de seguidores de um congressista e quantas pessoas ele segue é uma relação que varia entre estados, pois exitem estados onda a relação é linear e forte. Podemos concluir com base nas análises feitas que a Região onde a correlação é mais fraca é a Região Sul, enquanto na Região Sudeste a correlação é mais forte. Podemos destacar que o estado onde a relação é mais forte é a PB, com coeficiente de pearson de 0.84 e o estado onde a relação é mais fraca é o CE com coeficiente de pearson de -0.01.