Este livro está em Revisão aberta. Suas impressões são importantes para torná-lo melhor para você e para outros estudantes. Você pode anotar alguns textos selecionando-os com o cursor e clicando no menu popup. Você também pode ler anotações de outras pessoas: Clique no canto superior direito da página

4.4 Limpeza dos textos

Os textos das decisões são usados para identificar casos que devem ser excluídos. Por exemplo, processos em que não houve decisão de mérito, tais como decisões terminativas sem julgamento de mérito, processos extintos e prejudicados, seja por inércia da parte, seja por perda do objeto.

Além disso, a decisão contida na base acervo nem sempre corresponde à real decisão sobre reclamação, pois os técnicos do STF simplesmente extraem a última decisão do andamento, a qual por vezes é um mero despacho. Igualmente, o título do andamento nem sempre são suficientemente descritivos. Alguns deles apenas indicavam que se tratatava de uma publicação no diário de justiça.

Por essa razão, optou-se por extrair dos próprios textos a parte que corresponde à decisão, isto é, extraímos os últimos 800 caracteres do texto, que provavelmente contêm a decisão. Antes, porém, excluímos do texto as informações sobre quem assinou o documento.

Ademais, cortamos essa parte a partir de palavras-chave tais como ex positis, diante do exposto etc. Com isso, foi possível verificar se a decisão se tratava de liminar ou cautelar, se era um mero despacho concedendo vista ou uma cerdidão. Algumas palavras no início do texto indicavam se ele era um parecer do MP, se era um embargo de declaração ou se era um agravo regimental. Quando não foi possível identificar no início, foi possível fazê-lo no final do texto.

Alguns embargos foram convertidos em agravo regimental. A identificação desses casos também foi necessária.

texto <- texto %>%
  unite("docname",extensao,docid,sep="") %>%
  inner_join(andamentos,by="docname")

texto <- texto %>%
  mutate(caracteres=nchar(texto))


texto <- texto %>%
  mutate(texto=str_remove_all(texto,"(?i)documento assinado\\X+?(sob|por)\\s\\w+"))


texto <- texto %>%
  mutate(texto = str_squish(texto))



texto <- texto %>%
  mutate(dispositivo = case_when(
    caracteres > 800 ~{
      stringi::stri_reverse(texto) %>%
        stringi::stri_extract_first_regex("\\X{800}") %>%
        stringi::stri_reverse()
    },
    TRUE ~ texto))



texto <- texto %>%
  mutate(dispositivo=case_when(
    str_detect(texto1,"(?i)(antes? o exposto|ex positis|diante disso|ante o quadro|pelo exposto|diante do exposto|nesse contexto|diante do contexto|por es[st]a razão|pelas razões expostas|por todo o exposto|dessa forma|decis.o:|com essas considerações|nessas condições|sendo assim|face ao exposto|do exposto)") ~{
      str_extract(dispositivo,"(?i)(antes? o exposto|ex positis|diante disso|ante o quadro|pelo exposto|diante do exposto|nesse contexto|diante do contexto|por es[ts]a razão|pelas razões expostas|por todo o exposto|dessa forma|decis.o:|com essas considerações|nessas condições|sendo assim|face ao exposto|do exposto).+")
    },
    TRUE ~ dispositivo))


texto <- texto %>%
  filter(!str_detect(dispositivo,"(?i)defiro a liminar"))

texto <- texto %>%
  mutate(exclusoes = str_extract(texto,"\\X{80}")) %>%
  # filter(!str_detect(cautelar,"MEDIDA CAUTELAR")) %>%
  filter(!str_detect(exclusoes,"(?i)(^Documento|^MINISTÉRIO|^procurador)")) %>%
  filter(!str_detect(exclusoes,"EMB.DECL.")) %>%
  filter(!str_detect(doc,"(?i)(PGR|despacho|certid.o|vista)")|is.na(doc)) %>%
  select(-exclusoes)