library (shiny)
library(tidyverse)
options(scipen = 1000)
library(haven)
library(memisc)
library(sjPlot)
library(Zelig)
library(knitr)
library(kableExtra)
O banco de dados utilizado nessa análise é o ESEB 2018, banco de dados que contém amostra representativa da população brasileira. Estudo realizado logo após as eleições, ainda em 2018. Portanto, antes do atual presidente Bolsonaro assumir o mandato. Para mais informações sobre a base e os códigos das questões: https://www.cesop.unicamp.br/por/eseb/ondas/11
As clivagens sociais são trabalhadas aqui no sentido semelhante ao que Thomas Piketty utiliza em “Capital e Ideologia” ( https://www.amazon.com.br/Capital-Ideologia-Thomas-Piketty/dp/8551006150/ref=asc_df_8551006150/?tag=googleshopp00-20&linkCode=df0&hvadid=379748610448&hvpos=&hvnetw=g&hvrand=6442587312238555743&hvpone=&hvptwo=&hvqmt=&hvdev=c&hvdvcmdl=&hvlocint=&hvlocphy=1001713&hvtargid=pla-923489348572&psc=1 ). Ou seja, utilizam-se variáveis como gênero, raça e escolaridade, entre outros. Afim de apresentar os determinantes de 6 tipos de votos presidenciais no primeiro turno de 2018. Analisaremos as clivagens sociais que foram mais afeitas ao voto em: - Jair Bolsonaro - Fernando Haddad - Ciro Gomes - Geraldo Alckmin - João Amoedo - Brancos e Nulos
Os outros candidatos e aqueles que declararam não lembrar em quem votaram foram descartados dos modelos de regressão logística binária e simulações Zelig.
ESEB2018 <- read_sav("04622.sav")
BASET <- subset(ESEB2018, select = c(D1A_FAIXAID, D2_SEXO, D3_ESCOLA, Q12P1_B, Q12P2_B, D10, REG, D12A))
BASET$MULTI_T1<- memisc::recode(as.factor(BASET$Q12P1_B), 1 <- c (9), 2 <- c(5),
3 <- c(3), 4 <- c(6), 5 <-c(10),
6 <-c(1,2,4,7,8,12,13,14), 7 <-c(50,60),
NA <- c(97,98,99))
table(BASET$MULTI_T1)
##
## 1 2 3 4 5 6 7 <NA>
## 838 554 196 52 35 88 146 597
table(BASET$Q12P1_B) #para comparar
##
## 1 2 3 4 5 6 7 8 9 10 12 14 50 60 97 98 99
## 15 22 196 1 554 52 16 13 838 35 18 3 101 45 58 47 492
Primeiro recodifiquei os votos para encontrar as categorias de interesse
na codificação original:
9 voto em Jair Bolsonaro primeiro turno
3 Ciro Gomes
10 João Amoedo
5 Fernando Haddad
6 Geradlo Alckmin
Branco e Nulo é 50 e 60
Vê-se acima que recodificamos.
Uma forma de testar a base de dados é comparar as porcentagens recebidas pelos candidatos nas eleições frente ao encontrado no ESEB.
Pegamos os dados oficiais do resultado no TSE (não em votos válidos, mas em totais) https://www.tse.jus.br/eleicoes/estatisticas/estatisticas-eleitorais
e comparamos as duas amostras:
prop.table(table(ESEB2018$Q12P1_B))*100
##
## 1 2 3 4 5 6
## 0.59856345 0.87789306 7.82122905 0.03990423 22.10694334 2.07501995
## 7 8 9 10 12 14
## 0.63846768 0.51875499 33.43974461 1.39664804 0.71827614 0.11971269
## 50 60 97 98 99
## 4.03032721 1.79569034 2.31444533 1.87549880 19.63288109
# verificação percentual total 79,67
(46.03*79.67)/100 #BOLSONARO
## [1] 36.6721
(29.28*79.67)/100 #HADDAD
## [1] 23.32738
(12.47*79.67)/100 #CIRO GOMES
## [1] 9.934849
(4.76*79.67)/100 #ALCKMIN
## [1] 3.792292
(2.5*79.67)/100 #AMOEDO
## [1] 1.99175
(0.59856345+0.87789306+0.03990423+0.63846768+0.51875499+0.71827614+0.11971269) #outros ESEB
## [1] 3.511572
4.03032721 + 1.79569034 #branco e nulo ESEB
## [1] 5.826018
(2.31+1.87+19.63) # semresposta/abstenções
## [1] 23.81
2.65+6.14 #BRANCOS E NULOS no TSE
## [1] 8.79
((1.26+1.20+1+0.8+0.58+0.05+0.04+0.03)*91.21)/100 #outros no TSE
## [1] 4.524016
voto <- c('Bolsonaro', 'Haddad', 'Ciro', 'Alckmin', 'Amoedo', 'Outros', 'Branco_Nulo', 'SemResposta/Abstencao')
ESEB <- c(36.67, 23.32, 9.93, 3.79, 1.99, 3.51, 5.82,23.81)
TSE <- c(41.98, 26.70,11.37,4.34,2.28, 4.52, 8.79,20.33)
data <- data.frame(voto, ESEB, TSE)
data$diferenca <- ESEB - TSE
b <- data %>%
dplyr::select(voto, ESEB, TSE, diferenca) %>%
arrange(desc(diferenca))
b %>%
kbl(caption = "Diferença ESEB e votos totais") %>%
kable_classic(full_width = F, html_font = "Garamond")
| voto | ESEB | TSE | diferenca |
|---|---|---|---|
| SemResposta/Abstencao | 23.81 | 20.33 | 3.48 |
| Amoedo | 1.99 | 2.28 | -0.29 |
| Alckmin | 3.79 | 4.34 | -0.55 |
| Outros | 3.51 | 4.52 | -1.01 |
| Ciro | 9.93 | 11.37 | -1.44 |
| Branco_Nulo | 5.82 | 8.79 | -2.97 |
| Haddad | 23.32 | 26.70 | -3.38 |
| Bolsonaro | 36.67 | 41.98 | -5.31 |
A base do ESEB consta com dados de pessoas que dizem não ter votado (abstenção) e que não lembram em quem votaram ou preferem não responder, e isso gera a subrepresentação em todos os votos. O mais subrepresentados na amostra são os eleitores de Haddad e Bolsonaro. O que não prejudica, dado que são os mais votados.Isso quer dizer que os votos em Amoedo, Ciro e Alckmin são menos distantes do resultado oficial, dado que são em menor número, isso por si só, é uma boa notícia.
Agora seguiremos com a recodificação
# dando nome as categorias se precisar
BASET <- subset(BASET, select = c(D1A_FAIXAID, D2_SEXO, D3_ESCOLA, MULTI_T1, Q12P2_B, D10, REG, D12A)) %>% na.omit()
BASET$faixa_idade <- as.numeric(BASET$D1A_FAIXAID) # necessário em todos os dados
BASET$escolaridade <- as.numeric(BASET$D3_ESCOLA)
BASET$sexo <- as.numeric(BASET$D2_SEXO)
BASET <- BASET %>%
mutate(Feminino = case_when(sexo == "2" ~ 1,
TRUE ~0))
BASET <- BASET %>%
dplyr::mutate(Amoedo = case_when(MULTI_T1 == "5" ~ 1,
TRUE ~ 0))
table(BASET$Amoedo)#para conferir
##
## 0 1
## 2471 35
BASET <- BASET %>%
mutate(Alckmin = case_when(MULTI_T1 == "4" ~ 1,
TRUE ~0))
BASET <- BASET %>%
mutate(Ciro = case_when(MULTI_T1 == "3" ~ 1,
TRUE ~0))
BASET <- BASET %>%
mutate(Haddad = case_when(MULTI_T1 == "2" ~ 1,
TRUE ~0))
BASET <- BASET %>%
mutate(Bolsonaro = case_when(MULTI_T1 == "1" ~ 1,
TRUE ~0))
BASET <- BASET %>%
mutate(Outros = case_when(MULTI_T1 == "6" ~ 1,
TRUE ~0))
BASET <- BASET %>%
mutate(Branco_Nulo = case_when(MULTI_T1 == "7" ~ 1,
TRUE ~0))
BASET$D10 <- as.numeric(BASET$D10)
BASET <- BASET %>%
mutate(Evangelico = case_when(D10 == "5" ~ 1,
TRUE ~ 0))%>%
mutate(Catolico = case_when(D10 == "3" ~ 1,
TRUE ~ 0))%>%
mutate(Ateu_Agnostico = case_when(D10 == "96" ~ 1,
TRUE ~ 0))
BASET$REG <- as.numeric(BASET$REG)
BASET <- BASET %>%
mutate(Sudeste = case_when(REG == "3" ~ 1,
TRUE ~ 0))%>%
mutate(Norte = case_when(REG == "1" ~ 1,
TRUE ~ 0))%>%
mutate(Sul = case_when(REG == "4" ~ 1,
TRUE ~ 0))%>%
mutate(Nordeste = case_when(REG == "2" ~1,TRUE ~ 0))
BASET$D12A <- as.numeric(BASET$D12A)
BASET <- BASET %>%
mutate(Branco = case_when(D12A == "3" ~ 1,
TRUE ~0))
BASET <- subset(BASET, select = c(faixa_idade, Feminino, escolaridade, Amoedo,
Alckmin, Ciro, Haddad, Bolsonaro, Outros,
Branco_Nulo, Evangelico, Catolico, Ateu_Agnostico, Sul,
Sudeste, Norte, Nordeste, Branco))
Primeiro traremos à tona o modelo e a previsão de Bolsonaro, depois apresentaremos os principais determinantes do voto no primeiro turno para Fernando Haddad, Ciro Gomes, Geraldo Alckmin, João Amoedo e Branco/Nulo.
modelo_Bolsonaro <- glm(Bolsonaro ~ escolaridade +
Feminino + faixa_idade + Evangelico + Ateu_Agnostico + Evangelico +
Ateu_Agnostico + Sul + Nordeste + Sudeste + Norte + Branco, data = BASET,
family=binomial(link=logit))
tab_model(modelo_Bolsonaro, show.ci = F, auto.label = T, show.se = T, collapse.se = T,
wrap.labels = 60, p.style = "stars")
| Bolsonaro | |
|---|---|
| Predictors | Odds Ratios |
| (Intercept) |
0.31 *** (0.08) |
| escolaridade |
1.08 *** (0.02) |
| Feminino |
0.59 *** (0.05) |
| faixa_idade |
1.08 ** (0.03) |
| Evangelico |
1.76 *** (0.16) |
| Ateu_Agnostico |
0.58 (0.23) |
| Sul |
0.98 (0.18) |
| Nordeste |
0.57 ** (0.10) |
| Sudeste |
0.84 (0.14) |
| Norte |
1.43 (0.30) |
| Branco |
1.14 (0.11) |
| Observations | 2506 |
| R2 Tjur | 0.049 |
|
|
com a fórmula (OR-1)*100 = razão de chance (%)
obtemos os efeitos esperados de cada uma das clivagens sociais no voto do candidato. São comparados os eleitores dentro do grupo de eleitores do próprio candidato e assim observamos as clivagens sociais mais latentes de cada um dos seis votos possíveis à presidente.
Note que o primeiro passo é observar a presença de asteriscos ao lado dos valores, somente nesse caso deve-se aplicar a fórmula acima mencionada.
Sobre o valor do intercepto, não entraremos nesse quesito agora, caso tenha interesse em saber mais sobre essa medida sugiro esse site: https://blog.minitab.com/pt/analise-de-regressao-como-interpretar-a-constante-intercepto-y
No que concerne a Bolsonaro, observando os asteriscos ao lado das variáveis, percebemos que a cada elevação no nível de escolaridade (são 9 níveis, vai do analfabetismo à pós-graduação) é esperado um efeito de
(1.08-1)*100
## [1] 8
8% a mais de chance de votar em Bolsonaro
já ser mulher tem efeito negativo:
(0.59-1)*100
## [1] -41
Ser mulher (e não homem) reduz em 41% a chance de votar em Bolsonaro
Percebeu, caro leitor, uma relação? Escolaridade tem valor acima de 1 (1,08) e Feminino valor abaixo de um (0,59). Dado a fórmula utilizada, temos agora o “mapa da mina” para interpretar a tabela de regressão logística binária de todos os candidatos ->
1- observar se há asteriscos (significância) e prosseguir a análise somente nesses casos 2- Se o valor for maior que, um o efeito é positivo (como no exemplo, cada elevação de escolaridade aumenta a chance de votar em Bolsonaro). Já se o valor for menor que o efeito é negativo (conforme o caso do gênero, em que ser mulher reduz a probabilidade de votar em Bolsonaro.
3- aplicar a fórmula (OR-1)*100 = razão de chance (%) para obter todas as probabilidades
Perceba que a comparação que a fórmula faz é somente entre eleitores de Bolsonaro, por isso mesmo candidatos com poucos votos como Alckmin podem ser testados.
Utilizar a ferramenta Zelig é útil para prever cenários. Esse pacote do software gera 10 mil simulações de cenários solicitados. Foi o que pedimos para o programa rodar em relação ao voto em Bolsonaro.
Simulamos a probabilidade de um eleitor evangélico, não nordestino, homem, de alta escolaridade, com mais de 65 anos e branco votar em Bolsonaro em comparação com uma eleitora mulher, nordestina, não evangélica, que não tem nível máximo de escolaridade, que possui menos de 65 anos e que não é branca.
z.out1 <- zelig(Bolsonaro ~ escolaridade +
Feminino + faixa_idade + Evangelico + Ateu_Agnostico + Evangelico +
Sul + Nordeste + Sudeste + Norte+ Branco,
model = "logit", data = BASET, cite = FALSE)
x.out1 <- Zelig::setx(z.out1,Evangelico = 1, Nordeste = 0, Feminino = 0, escolaridade = 9,
faixa_idade = 7, Branco = 1)
s.out1 <- sim(z.out1, x = x.out1)
summary(s.out1)
##
## sim x :
## -----
## ev
## mean sd 50% 2.5% 97.5%
## [1,] 0.6740082 0.0412101 0.6740694 0.5942014 0.7507259
## pv
## 0 1
## [1,] 0.307 0.693
plot(s.out1)
Obtivemos em 10 mil simulações dos fatores escolhidos. O critério para escolha desses fatores se deu em virtude de serem esses significantes para voto em Bolsonaro.
O valor médio de probabibilidade de voto em Bolsonaro nas 10 mil simulações foi (mean). 95% dos casos ficaram entre (números do intervalo acima observado ‘2,5%’ e ‘97,5%’). O efeito é ilustrado na imagem (histograma acima)
O mesmo procedimento foi realizado para todos os candidatos. Simulamos o efeito de todas as variáveis estatisticamente significativas para cada um dos seis votos em análise. Quando a escolaridade tem efeito positivo, simulamos o maior nível, em caso contrário, o menor. O mesmo é válido para a faixa de idade.
Já as outras (Feminino, religião, região, raça) basta colocar se tem ou não o atributo, quando esse for significativo
Deves ter observado que a região centro-Oeste, bem como outras categorias religiosas e de raça não aparecem na tabela. Isso é por que são categorias de referência. Isso quer dizer que nesses tipos de dados, uma parte tem de ser a referência para que se evite não ter base de comparação. Para saber mais sobre categorias de referências: https://www.cps.fgv.br/cps/pesquisas/Politicas_sociais_alunos/2009/BES_Regress%C3%A3oLog%C3%ADstica.pdf
modelo_Haddad <- glm(Haddad ~ escolaridade +
Feminino + faixa_idade + Evangelico + Ateu_Agnostico + Evangelico +
Ateu_Agnostico + Sul + Nordeste + Sudeste + Norte + Branco, data = BASET,
family=binomial(link=logit))
tab_model(modelo_Haddad, show.ci = F, auto.label = T, show.se = T, collapse.se = T,
wrap.labels = 60, p.style = "stars")
| Haddad | |
|---|---|
| Predictors | Odds Ratios |
| (Intercept) |
0.41 ** (0.12) |
| escolaridade |
0.89 *** (0.02) |
| Feminino |
1.45 *** (0.15) |
| faixa_idade |
0.97 (0.03) |
| Evangelico |
0.56 *** (0.06) |
| Ateu_Agnostico |
0.49 (0.27) |
| Sul |
1.12 (0.27) |
| Nordeste |
2.89 *** (0.62) |
| Sudeste |
0.90 (0.20) |
| Norte |
1.72 * (0.45) |
| Branco |
0.71 ** (0.09) |
| Observations | 2506 |
| R2 Tjur | 0.090 |
|
|
z.out1 <- zelig(Haddad ~ escolaridade +
Feminino + faixa_idade + Evangelico + Ateu_Agnostico + Evangelico +
Sul + Nordeste + Sudeste + Norte + Branco,
model = "logit", data = BASET, cite = FALSE)
x.out1 <- Zelig::setx(z.out1,Evangelico = 0, Nordeste = 1, Feminino = 1, escolaridade = 0, Branco = 0)
s.out1 <- sim(z.out1, x = x.out1)
summary(s.out1)
##
## sim x :
## -----
## ev
## mean sd 50% 2.5% 97.5%
## [1,] 0.6049074 0.05027858 0.6045327 0.5027059 0.6988276
## pv
## 0 1
## [1,] 0.376 0.624
Para o caso do voto em Haddad do partido dos trabalhadores (PT) simulamos (seguindo a mesma lógica comparativa mencionada acima no caso de Bolsonaro) e notamos qaue ser mulher, não evangélica, do nordeste e não-branca elevou em média (mean) a chance de votar no petista. 95% das simulações obtiveram efeito de (intervalo 2,5-97,%).
modelo23 <- glm(Ciro ~ escolaridade +
Feminino + faixa_idade + Evangelico + Ateu_Agnostico + Evangelico +
Ateu_Agnostico + Sul + Nordeste + Sudeste + Norte + Branco, data = BASET,
family=binomial(link=logit))
tab_model(modelo23, show.ci = F, auto.label = T, show.se = T, collapse.se = T,
wrap.labels = 60, p.style = "stars")
| Ciro | |
|---|---|
| Predictors | Odds Ratios |
| (Intercept) |
0.02 *** (0.01) |
| escolaridade |
1.24 *** (0.05) |
| Feminino |
1.34 (0.21) |
| faixa_idade |
0.91 (0.05) |
| Evangelico |
0.46 *** (0.09) |
| Ateu_Agnostico |
2.15 (0.91) |
| Sul |
1.03 (0.42) |
| Nordeste |
2.93 ** (1.03) |
| Sudeste |
1.31 (0.46) |
| Norte |
1.28 (0.58) |
| Branco |
1.04 (0.19) |
| Observations | 2506 |
| R2 Tjur | 0.045 |
|
|
z.out1 <- zelig(Ciro ~ escolaridade +
Feminino + faixa_idade + Evangelico + Ateu_Agnostico + Evangelico +
Sul + Nordeste + Sudeste + Norte + Branco,
model = "logit", data = BASET, cite = FALSE)
x.out1 <- Zelig::setx(z.out1,Evangelico = 0, Nordeste = 1, escolaridade = 9)
s.out1 <- sim(z.out1, x = x.out1)
summary(s.out1)
##
## sim x :
## -----
## ev
## mean sd 50% 2.5% 97.5%
## [1,] 0.3173847 0.06362767 0.3146739 0.2026666 0.4535864
## pv
## 0 1
## [1,] 0.645 0.355
Para o caso do voto em Ciro Gomes notamos que não ser evangélico, do nordeste e de alta escolaridade elevou em média (mean) chance de votar nesse candidato. 95% das simulações obtiveram efeito de (intervalo 2,5-97,%).
modelo24 <- glm(Alckmin ~ escolaridade +
Feminino + faixa_idade + Evangelico + Ateu_Agnostico + Evangelico +
Ateu_Agnostico + Sul + Nordeste + Sudeste + Norte + Branco, data = BASET,
family=binomial(link=logit))
tab_model(modelo24, show.ci = F, auto.label = T, show.se = T, collapse.se = T,
wrap.labels = 60, p.style = "stars")
| Alckmin | |
|---|---|
| Predictors | Odds Ratios |
| (Intercept) |
0.01 *** (0.01) |
| escolaridade |
1.00 (0.07) |
| Feminino |
1.50 (0.44) |
| faixa_idade |
1.16 (0.11) |
| Evangelico |
0.79 (0.25) |
| Ateu_Agnostico |
1.22 (1.26) |
| Sul |
0.52 (0.32) |
| Nordeste |
0.25 * (0.17) |
| Sudeste |
1.10 (0.54) |
| Norte |
0.89 (0.60) |
| Branco |
1.46 (0.44) |
| Observations | 2506 |
| R2 Tjur | 0.008 |
|
|
z.out1 <- zelig(Alckmin ~ escolaridade +
Feminino + faixa_idade + Evangelico + Ateu_Agnostico + Evangelico +
Sul + Sul + Nordeste + Sudeste + Norte + Branco,
model = "logit", data = BASET, cite = FALSE)
x.out1 <- Zelig::setx(z.out1, Nordeste = 0)
s.out1 <- sim(z.out1, x = x.out1)
summary(s.out1)
##
## sim x :
## -----
## ev
## mean sd 50% 2.5% 97.5%
## [1,] 0.02391784 0.004555709 0.0234917 0.01625097 0.03371442
## pv
## 0 1
## [1,] 0.978 0.022
Para o caso do voto em Alckmi, notamos quesomente Nordeste apresentou efeito. Então obtivemos na simulação com o Zelig que não ser do Nordeste elevou em média (mean) de chance do voto em Alckmin. 95% das simulações obtiveram efeito de (intervalo 2,5-97,%) de votar nesse candidato.
modelo25 <- glm(Amoedo ~ escolaridade +
Feminino + faixa_idade + Evangelico + Ateu_Agnostico + Evangelico +
Ateu_Agnostico + Sul + Nordeste + Sudeste + Norte + Branco, data = BASET,
family=binomial(link=logit))
tab_model(modelo25, show.ci = F, auto.label = T, show.se = T, collapse.se = T,
wrap.labels = 60, p.style = "stars")
| Amoedo | |
|---|---|
| Predictors | Odds Ratios |
| (Intercept) |
0.00 (0.00) |
| escolaridade |
1.38 ** (0.14) |
| Feminino |
1.08 (0.37) |
| faixa_idade |
0.92 (0.11) |
| Evangelico |
0.91 (0.36) |
| Ateu_Agnostico |
2.29 (1.79) |
| Sul |
9250903.70 (6901044405.21) |
| Nordeste |
2191645.31 (1634936858.69) |
| Sudeste |
5320318.80 (3968882972.47) |
| Norte |
1820146.54 (1357804879.90) |
| Branco |
1.09 (0.41) |
| Observations | 2506 |
| R2 Tjur | 0.014 |
|
|
z.out1 <- zelig(Amoedo ~ escolaridade +
Feminino + faixa_idade + Evangelico + Ateu_Agnostico + Evangelico +
Sul + Nordeste + Sudeste + Norte + Branco,
model = "logit", data = BASET, cite = FALSE)
x.out1 <- Zelig::setx(z.out1,escolaridade = 9)
s.out1 <- sim(z.out1, x = x.out1)
summary(s.out1)
##
## sim x :
## -----
## ev
## mean sd 50% 2.5% 97.5%
## [1,] 0.4594808 0.4914487 0.004978276 0.0000000000000002220446 1
## pv
## 0 1
## [1,] 0.541 0.459
Para o caso do voto em João Amoedo do partido Novo notamos que cada elevação no nível de escolaridade aumenta em cerca de 38% a chance do voto no candidato. Testamos o cenário do eleitor ter o maior nível de escolaridade e essa elevou em média (mean) chance de votar nesse candidato. 95% das simulações obtiveram efeito de (intervalo 2,5-97,%).
modelo46 <- glm(Branco_Nulo ~ escolaridade +
Feminino + faixa_idade + Evangelico + Ateu_Agnostico + Evangelico +
Ateu_Agnostico + Sul + Nordeste + Sudeste + Norte+ Branco, data = BASET,
family=binomial(link=logit))
tab_model(modelo46, show.ci = F, auto.label = T, show.se = T, collapse.se = T,
wrap.labels = 60, p.style = "stars")
| Branco_Nulo | |
|---|---|
| Predictors | Odds Ratios |
| (Intercept) |
0.01 *** (0.01) |
| escolaridade |
1.07 (0.04) |
| Feminino |
1.66 ** (0.30) |
| faixa_idade |
1.04 (0.06) |
| Evangelico |
0.69 (0.14) |
| Ateu_Agnostico |
0.00 (0.00) |
| Sul |
1.72 (0.90) |
| Nordeste |
2.36 (1.15) |
| Sudeste |
2.91 * (1.37) |
| Norte |
1.46 (0.87) |
| Branco |
0.98 (0.19) |
| Observations | 2506 |
| R2 Tjur | 0.011 |
|
|
z.out1 <- zelig(Branco_Nulo ~ escolaridade +
Feminino + faixa_idade + Evangelico + Ateu_Agnostico + Evangelico +
Sul + Nordeste + Sudeste + Norte + Branco,
model = "logit", data = BASET, cite = FALSE)
x.out1 <- Zelig::setx(z.out1, Feminino = 1, Sudeste = 1)
s.out1 <- sim(z.out1, x = x.out1)
summary(s.out1)
##
## sim x :
## -----
## ev
## mean sd 50% 2.5% 97.5%
## [1,] 0.3728098 0.4200007 0.1074338 0.000001649191 0.9999272
## pv
## 0 1
## [1,] 0.62 0.38
Para o caso do voto em anulado (Brancos e Nulos) notamos que ser mulher e do Sudeste aumenta a chance desse comportamento eleitoral. Testamos esse cenário duplo e encontramos elevação em média (mean) de chance votar nesse branco e nulo nas dez mil simulações Zelig. 95% das simulações obtiveram efeito de (intervalo 2,5-97,%).
tab_model(modelo_Haddad, modelo_Bolsonaro, modelo23, modelo24, modelo25, modelo46, show.ci = F, auto.label = T, show.se = T, collapse.se = T,
wrap.labels = 60, p.style = "stars")
| Haddad | Bolsonaro | Ciro | Alckmin | Amoedo | Branco_Nulo | |
|---|---|---|---|---|---|---|
| Predictors | Odds Ratios | Odds Ratios | Odds Ratios | Odds Ratios | Odds Ratios | Odds Ratios |
| (Intercept) |
0.41 ** (0.12) |
0.31 *** (0.08) |
0.02 *** (0.01) |
0.01 *** (0.01) |
0.00 (0.00) |
0.01 *** (0.01) |
| escolaridade |
0.89 *** (0.02) |
1.08 *** (0.02) |
1.24 *** (0.05) |
1.00 (0.07) |
1.38 ** (0.14) |
1.07 (0.04) |
| Feminino |
1.45 *** (0.15) |
0.59 *** (0.05) |
1.34 (0.21) |
1.50 (0.44) |
1.08 (0.37) |
1.66 ** (0.30) |
| faixa_idade |
0.97 (0.03) |
1.08 ** (0.03) |
0.91 (0.05) |
1.16 (0.11) |
0.92 (0.11) |
1.04 (0.06) |
| Evangelico |
0.56 *** (0.06) |
1.76 *** (0.16) |
0.46 *** (0.09) |
0.79 (0.25) |
0.91 (0.36) |
0.69 (0.14) |
| Ateu_Agnostico |
0.49 (0.27) |
0.58 (0.23) |
2.15 (0.91) |
1.22 (1.26) |
2.29 (1.79) |
0.00 (0.00) |
| Sul |
1.12 (0.27) |
0.98 (0.18) |
1.03 (0.42) |
0.52 (0.32) |
9250903.70 (6901044405.21) |
1.72 (0.90) |
| Nordeste |
2.89 *** (0.62) |
0.57 ** (0.10) |
2.93 ** (1.03) |
0.25 * (0.17) |
2191645.31 (1634936858.69) |
2.36 (1.15) |
| Sudeste |
0.90 (0.20) |
0.84 (0.14) |
1.31 (0.46) |
1.10 (0.54) |
5320318.80 (3968882972.47) |
2.91 * (1.37) |
| Norte |
1.72 * (0.45) |
1.43 (0.30) |
1.28 (0.58) |
0.89 (0.60) |
1820146.54 (1357804879.90) |
1.46 (0.87) |
| Branco |
0.71 ** (0.09) |
1.14 (0.11) |
1.04 (0.19) |
1.46 (0.44) |
1.09 (0.41) |
0.98 (0.19) |
| Observations | 2506 | 2506 | 2506 | 2506 | 2506 | 2506 |
| R2 Tjur | 0.090 | 0.049 | 0.045 | 0.008 | 0.014 | 0.011 |
|
||||||
Os preditores encontrados para o voto em Bolsonaro são similares aos encontrados em outros achados e pesquisas. Ser homem, evangélico, branco e mais idoso foi um forte determinante no voto em Bolsonaro. Embora é bom que se diga, que o voto no ex-capitão voto foi bem espalhado em várias categorias. Os únicos bastiões de resistência à onda Bolsonaro em 2018 parecem ser as mulheres e os nordestinos.
Ciristas e petistas são parecidos, mas nem tanto. Não ter identificação evangélica e estar no nordeste apresenta direção similar. Por outro lado, ser mulher e pouco escolarizado apresenta maior probabilidade do voto petista. Os ciristas mais prováveis são os mais escolarizados. Aplicando a fórmula ’(OR-1)*100 = razão de chance (%)’ têm-se que cada elevação do nível de escolaridade aumenta em 24% a chance de votar em Ciro.
O voto em Alckmin não tem um padrão muito identificado, o único efeito encontrado foi o fato de que o Nordeste pareceu mais reticente a dar o voto ao tucano, do que as outras regiões.
Chama a atenção o caso dos votos brancos e nulos por ser atrelado à região Sudeste. Não encontrei em nenhuma leitura essa dimensão, sendo portanto um interessante ponto para análises futuras. As mulheres também são muito mais tendentes à anulação do voto do que os homens.
Os “amoedistas” tem como característica maior escolaridade. Suspeito que o parco número de casos na amostra (35) pode ter inviabilizado o aparecimento de mais clivagens sociais significativas para o voto no Novo.
Poderia ser possível utilizar muito mais dados e aprofundar análises, inserir a votação no segundo turno, como feito acima no caso de Amoedo, mas tudo a seu tempo. O que me foi possível fazer apresenta essas constatações. O objetivo central de apresentar as clivagens sociais e os seis votos analisados, foi entretanto, cumprido. Para receber mais análises desse tipo te convido a seguir nossas redes sociais - https://sites.google.com/view/gregoriosilva/curtas