options(scipen =999) # Remove notação científicalibrary(ggplot2) # Pacote gráficolibrary(gridExtra) # Vários gráficos juntoslibrary(readxl) # Abre arquivos Excellibrary(dplyr) # Manipula banco de dadoslibrary(tidyr) # Manipula banco de dadoslibrary(tm) # Manipula textolibrary(epitools)library(janitor)# Abrindo banco de dados ---setwd("C:/Users/08691199741/Desktop/Análise Dados Náira")
Bancos de dados
# Ação Direta de Inconstitucionalidade (Steven)ADINS <-read_excel("ADINS_01_12_2022.xlsx")# Classificação dos proponentes (Naíra)banco <-read_excel("ESTE TRABALHANDO banco_Naira_para_classificacao.xlsx")banco = banco[!is.na(banco$Número), ] # Muitos NAs no período do Bolsonarobanco$`Partido do proponente`[banco$`Partido do proponente`=='DEMOCRATAS']='DEM'banco$`Partido do interpelado`[banco$`Partido do interpelado`=='DEMOCRATAS']='DEM'# Limpando variáveis ---# Removendo as duplicadasADINS = ADINS %>%select(-id)ADINS=unique(ADINS)# Formatando data de publicaçãoADINS$`Data de publicação`=as.Date(ADINS$`Data de publicação`, "%d/%m/%Y")# Reagrupando bd Náiraresumo = banco %>%group_by(`Período`, `Partido do proponente` , `Partido do interpelado`) %>%summarise(num =n()) resumo = resumo %>%drop_na(`Partido do proponente` , `Partido do interpelado`) resumo2 = resumo %>%filter(Período=="Dilma 1") %>%group_by(`Partido do interpelado`) %>%summarise(num=n())resumo3 = resumo %>%filter(Período=="Dilma 2") %>%group_by(`Partido do interpelado`) %>%summarise(num=n())resumo4 = resumo %>%filter(Período=="Temer") %>%group_by(`Partido do interpelado`) %>%summarise(num=n())
Perguntas de pesquisa
(1) Como os agentes proponentes das ADIs se comportam mediante o governo instaurado?
Nos gráficos a seguir, considerando a pergunta de pesquisa, podemos concluir que:
O governo incumbente é o que recebe (interpelados) o maior número de ADIs, indicando que o STF é um caminho de reinvidicação política/jurídica para assuntos diversos. Isso fica claro quando passamos dos governos Dilma para o governo Temer, quando ocorre uma migração do PT como principal interpelado para o PMDB.
Nota-se nos gráficos uma persistência do PSDB como partido interpelado. Provavelmente isso se deve a esse partido estar a frente de estados importantes como SP, MG e RS.
Nos gráficos dos proponentes das ADIs pode-se observar que a categoria OUTROS (MP, sindicatos e associações, governadores etc.) é a que mais aparece entre os proponentes. E que no governo Temer houve um aumento das publicações de ADIs, provavelmente, resultando dos governos passados. Com notório aumento da atuação dos partidos no governo Temer, indicando que ações dos partidos nos governo Dilma e início do governo Temer devem ter reverberado do processo político controverso do impeachment.
Gráficos dos partidos dos interpelados
g1 = resumo2 %>%ggplot(aes(x=`Partido do interpelado`, y=num)) +geom_col(fill='lightblue') +labs(title ="Dilma 1", y="Número de ADIs",x="Partido interpelado")+theme_minimal()+theme(axis.text.x =element_text(angle =90, vjust =0.5, hjust=1))+ylim(0,20)g1
g2 = resumo3 %>%ggplot(aes(x=`Partido do interpelado`, y=num)) +geom_col(fill='lightblue') +labs(title ="Dilma 2", y="Número de ADIS",x="Partido interpelado")+theme_minimal()+theme(axis.text.x =element_text(angle =90, vjust =0.5, hjust=1))+ylim(0,20)g2
g3 = resumo4 %>%ggplot(aes(x=`Partido do interpelado`, y=num)) +geom_col(fill='lightblue') +labs(title ="Temer", y="Número de ADIs",x="Partido interpelado") +theme_minimal()+theme(axis.text.x =element_text(angle =90, vjust =0.5, hjust=1))+ylim(0,20)g3
grid.arrange(g1,g2,g3, nrow =1)
Gráficos dos partidos proponentes
# Gráficos dos partidos dos proponentesg4 = resumo %>%filter(Período=="Dilma 1") %>%ggplot(aes(x=`Partido do proponente`, y=num)) +geom_col(fill='lightblue') +labs(title ="Dilma 1", y="Número de ADIs",x="Proponente") +ylim(0,200)+theme_minimal()+theme(axis.text.x =element_text(angle =90, vjust =0.5, hjust=1))g4
g6 = resumo %>%filter(Período=="Temer") %>%ggplot(aes(x=`Partido do proponente`, y=num)) +geom_col(fill='lightblue') +labs(title ="Temer", y="Número de ADIs",x="Proponente") +ylim(0,200)+theme_minimal()+theme(axis.text.x =element_text(angle =90, vjust =0.5, hjust=1))g6
grid.arrange(g4,g5,g6, nrow =1)
Gráficos dos proponentes: Partidos vs Sem Partido
# Gráficos dos proponentesg4 = resumo %>%filter(Período=="Dilma 1") %>%mutate(`Partido do proponente`=ifelse(`Partido do proponente`=='SEM PARTIDO','Sem partido', 'Com partido')) %>%ggplot(aes(x=`Partido do proponente`, y=num)) +geom_col(fill='lightblue') +labs(title ="Dilma 1", y="Número de ADIs",x="Proponente") +ylim(0,200)+theme_minimal()g4
g5 = resumo %>%filter(Período=="Dilma 2") %>%mutate(`Partido do proponente`=ifelse(`Partido do proponente`=='SEM PARTIDO','Sem partido', 'Com partido')) %>%ggplot(aes(x=`Partido do proponente`, y=num)) +geom_col(fill='lightblue') +labs(title ="Dilma 2", y="Número de ADIs",x="Proponente") +ylim(0,200)+theme_minimal()g5
g6 = resumo %>%filter(Período=="Temer") %>%mutate(`Partido do proponente`=ifelse(`Partido do proponente`=='SEM PARTIDO','Sem partido', 'Com partido')) %>%ggplot(aes(x=`Partido do proponente`, y=num)) +geom_col(fill='lightblue') +labs(title ="Temer", y="Número de ADIs",x="Proponente") +ylim(0,200)+theme_minimal()g6
grid.arrange(g4,g5,g6, nrow =1)
(2) Como o STF delibera sobre as ADI frente aos grupos políticos que ingressam com a ação?
A partir dos gráficos a seguir pode-se tirar as conclusões a seguir.
Note nos gráficos das séries temporais que há dois picos nas publicações das ADIs, o primeiro no final do governo Lula 2 e, o maior de todos, no final governo Bolsonaro. Sabendo que as ADIs começam em média três anos antes de serem publicados (mediana de dois anos), isso significa que o pico do governo Lula 2 deve ter ocorrido no início do governo Lula 1. No caso do pico de ADIs do governo Bolsonaro, esse aumento significativo deve ter ocorrido no final do governo Dilma 2, com o impeachment, com a reformas e turbulências políticas do governo Temer e resutlado das ações geradas durante a pandemia de COVID-19 no início do governo Bolsonaro.
Com as informações que temos até aqui, não é possível afirmar que o STF muda sua postura de acordo com o partido do proponente ou sob pressão de grupos específicos (sindicatos, pressão midiática etc).
Os boxplots com o tempo de duração de uma ADI (da atuação até publicação) não permitem que o tempo é diferente entre grupos políticos proponentes.
Importante deixar registrado que a distribuição do tempo de duração das ADIs tem média de três anos, com mediana de 2 anos.
ADIs por mês - Pela data de publicação
mês =as.Date(ADINS$`Data de publicação`, "%d-%m-%Y")mês =format(mês, "%01-%m-%Y")mês =as.Date(mês, "%d-%m-%Y")ADINS$`Publicação por mês`= mêsADINS$Procedente =ifelse(ADINS$procedente,'Sim','Não')p =ggplot(ADINS, aes(x=`Publicação por mês`, fill=Procedente))+geom_bar(stat='count') +scale_x_date(date_labels ="%Y") +labs(x='Mês',y='Frequência', fill='Procedente') +theme_minimal()p
ADIs por ano - Pela data de publicação
ano =format(ADINS$`Data de publicação`, "%Y")ADINS$`Publicação por ano`=as.numeric(ano, levels=as.character(1988:2022))ADINS$Procedente =ifelse(ADINS$procedente,'Sim','Não')p =ggplot(ADINS, aes(x=`Publicação por ano`, fill=Procedente))+geom_bar(stat='count',size=5) +labs(x='Ano',y='Frequência', fill='Procedente') +theme_minimal()p
# Número de ADINS por dia de mandatodp =as.Date(c("1985-03-15","1990-03-15","1992-12-29","1995-01-01","1999-01-01","2003-01-01","2007-01-01","2011-01-01", "2015-01-01","2016-08-31","2019-01-01"))pres =c('Sarney','Collor','Itamar','FHC 1','FHC 2','Lula 1', 'Lula 2', 'Dilma 1', 'Dilma 2','Temer', 'JB')ADINS$Presidente =ifelse(ADINS$`Data de publicação`<"1990-03-15", 'Sarney', 'Collor')ADINS$Presidente[ADINS$`Data de publicação`>"1992-12-29"& ADINS$`Data de publicação`<="1995-01-01"] ='Itamar'ADINS$Presidente[ADINS$`Data de publicação`>"1995-01-01"& ADINS$`Data de publicação`<="1999-01-01"] ='FHC 1'ADINS$Presidente[ADINS$`Data de publicação`>"1999-01-01"& ADINS$`Data de publicação`<="2003-01-01"] ='FHC 2'ADINS$Presidente[ADINS$`Data de publicação`>"2003-01-01"& ADINS$`Data de publicação`<="2007-01-01"] ='Lula 1'ADINS$Presidente[ADINS$`Data de publicação`>"2007-01-01"& ADINS$`Data de publicação`<="2011-01-01"] ='Lula 2'ADINS$Presidente[ADINS$`Data de publicação`>"2011-01-01"& ADINS$`Data de publicação`<="2015-01-01"] ='Dilma 1'ADINS$Presidente[ADINS$`Data de publicação`>"2015-01-01"& ADINS$`Data de publicação`<="2016-08-31"] ='Dilma 2'ADINS$Presidente[ADINS$`Data de publicação`>"2016-08-31"& ADINS$`Data de publicação`<="2019-01-01"] ='Temer'ADINS$Presidente[ADINS$`Data de publicação`>"2019-01-01"] ='JB'ADINS$Presidente =factor(ADINS$Presidente, levels = pres)tb =table(ADINS$Presidente[ADINS$improcedente])dts =as.Date(c(min(ADINS$`Data de publicação`), "1990-03-15", "1992-12-29", "1995-01-01","1999-01-01", "2003-01-01", "2007-01-01", "2011-01-01", "2015-01-01","2016-08-31","2019-01-01", max(ADINS$`Data de publicação`)))ds =as.integer(dts[2:length(dts)] - dts[1:length(dts)-1])ads =rbind(tb, ds)ads =rbind(ads, round(ads[1,]/ads[2,],2))rownames(ads) =c('NumADIs','Dias','ADIs/Dia')ads =data.frame(t(ads))ads$Presidente =factor(rownames(ads), levels=rownames(ads))p =ggplot(ads, aes(x=Presidente, y=NumADIs))+geom_bar(stat='identity', fill='lightblue')+theme_minimal()p
p =ggplot(ads, aes(x=Presidente, y=`ADIs.Dia`))+geom_bar(stat='identity', fill='lightblue')+labs(y='Número de ADINS por dias de governo')+theme_minimal()p
# Cruzando os bancos de dadosADINS$Número =substr(ADINS$Titulo, 5, 8)ADINS$Número =as.integer(ADINS$Número)banco = banco %>%left_join(ADINS)# Adins por ano pela data da AUTUAÇÃOano =format(banco$`Data de autuação`, "%Y")banco$`Autuação por ano`=as.numeric(ano, levels=as.character(1988:2022))banco$Procedente = banco$procedentebanco$Procedente[banco$Procedente==TRUE] ='Sim'banco$Procedente[banco$Procedente==FALSE] ='Não'p =ggplot(banco[!is.na(banco$Procedente),], aes(x=`Autuação por ano`, fill=Procedente))+geom_bar(stat='count',size=5) +labs(x='Ano',y='Frequência', fill='Procedente') +theme_minimal()p
# Vamos ver a taxa de procedentes durante o tempo# Taxa de ADIs procedentes por anoano =format(banco$`Data de autuação`, "%Y")banco$`Autuação por ano`=as.numeric(ano, levels=as.character(1988:2022))banco$Procedente = banco$procedentebanco$Procedente[banco$Procedente==TRUE] ='Sim'banco$Procedente[banco$Procedente==FALSE] ='Não'p =ggplot(banco, aes(x=`Autuação por ano`, fill=Procedente))+geom_bar(position ='fill', size=5) +labs(x='Ano',y='Frequência', fill='Procedente') +theme_minimal()p
Tempo que o STF leva entre a autuação e a publicação da ADI por partido do interpelado
banco$`Data de publicação`=as.Date(banco$`Data de publicação`, "%d-%m-%Y")banco$`Data de autuação`=as.Date(banco$`Data de autuação`, "%d-%m-%Y")
Warning in as.POSIXlt.POSIXct(x, tz = tz): unknown timezone '%d-%m-%Y'
banco$`Duração da ADI`=difftime(banco$`Data de publicação`,banco$`Data de autuação`, units ="days") banco$`Duração da ADI`=as.numeric(banco$`Duração da ADI`)/365summary(banco$`Duração da ADI`)
Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
0.0959 0.8904 1.9986 3.0685 4.8445 11.2110 1045
g =ggplot(banco, aes(y=`Duração da ADI`))+geom_boxplot()+labs(y='Tempo de Duração (anos)', 'ADIs')+theme_minimal()g
Warning: Removed 1045 rows containing non-finite outside the scale range
(`stat_boxplot()`).
g1 =ggplot(banco[!is.na(banco$`Partido do interpelado`),], aes(x=`Partido do interpelado`, y=`Duração da ADI`))+geom_boxplot(fill='lightblue')+labs(x='Partido do interpelado',y='Tempo da duração da ADI (anos)') +theme_minimal()+theme(axis.text.x =element_text(angle =90, vjust =0.5, hjust=1))g1
Warning: Removed 266 rows containing non-finite outside the scale range
(`stat_boxplot()`).
(3) Como os agentes proponentes e o STF modificam suas posturas no decorrer do tempo (de 1989 a 2022)?
Note no gráfico a seguir que a proporção de ADIs julgadas procedentes pelo STF aumentaram a partir do segundo mandato da Lula (aproximadamente 50%) e reduziram ficando numa taxa de 30% nos mandatos seguintes. Isso indica uma mudança de comportamento da década de 1990 para 2000 e uma atuação do STF a partir de 2010 mantendo um padrão de ADIs procedentes.
Fica como trabalho futuro ampliar as variáveis do banco de dados para identificar diferenças entre os ASSUNTOS das ADIs e o comportamento do STF frente a eles.
Taxa de ADIs procedentes por ano - Pela data de publicação
ano =format(ADINS$`Data de publicação`, "%Y")ADINS$`Publicação por ano`=as.numeric(ano, levels=as.character(1988:2022))ADINS$Procedente =ifelse(ADINS$procedente,'Sim','Não')p =ggplot(ADINS, aes(x=`Publicação por ano`, fill=Procedente))+geom_bar(position ='fill', size=5) +labs(x='Ano',y='Frequência', fill='Procedente') +theme_minimal()p
(4) Períodos que procedem de grandes reformas constitucionais (e.g. reformas da previdências, reformas trabalhistas etc.) resultam em aumento nas demandas por ADI?
Não temos evidências, com os dados e variáveis que temos, para afirmar que as reformas geraram maior demanda por ADIs ou maior número delas julgadas procedentes. Isso exigiria que tivéssemos acesso às datas de autuação para todos os processos.
Contudo, fica evidente uma mudança do acionamento do STF por ADIs a partir do primeiro governo Lula e que se manteve nos governos seguintes.
É possível afirmar que o grande número de ADIs publicadas no governo Bolsonaro seja um reflexo da instabilidade política após o impeachment da presidenta Dilma e que pode ter influência das várias reformas liberais dos governos Temer e Bolsonaro (trabalhista, teto de gastos, previdenciária etc) acrescentadas pelas ações do STF frente a pandemia de COVID-19. Nesse último caso, o Tribunal foi demandado por via das ADIs para atuar nos estados, municípios e, principalmente, diante das ações do executivo federal no que se refere as políticas públicas frente a pandemia.
mês =as.Date(ADINS$`Data de publicação`, "%d-%m-%Y")mês =format(mês, "%01-%m-%Y")mês =as.Date(mês, "%d-%m-%Y")ADINS$`Publicação por mês`= mêsADINS$Procedente =ifelse(ADINS$procedente,'Sim','Não')p =ggplot(ADINS, aes(x=`Publicação por mês`, fill=Procedente))+geom_bar(stat='count') +scale_x_date(date_labels ="%Y") +labs(x='Mês',y='Frequência', fill='Procedente') +theme_minimal()p