1. Introdução

Tema: Identificação de padrões em decisões judiciais relacionadas a crimes de tráfico de drogas nas comarcas de atuação da Defensoria Pública do Estado de São Paulo, em 2023.

Questão central: “Quais são os principais fatores que influenciaram as decisões judiciais em casos de tráfico de drogas, no estado de São Paulo, em 2023?”

Softwares usados foram o Rstudio e a linguagem R, dos quais merecem se observar aqueles presentes no pacote tidyverse para faxina de dados, classificação e visualização, e especialmente, o pacote {tjsp} (JESUS FILHO, 2020). De hardware, foi utilizado computador Acer E5-575G, 8GB de Ram, 264GB de SSD.

2. Metodologia

2.1 Justificativa

Estudos relevantes de Jurimetria em Tráfico de Drogas (Trecenti, Jesus, Mendes; 2018) optaram por coletar dados a partir de boletins de ocorrência. Entretanto como o objetivo do estudo é de observar padrões em decisões judiciais, este estudo se limitará análise de sentenças sobre crimes que envolvam Lei de Drogas, a lei 11.343/05.

Tal decisão é central para o estudo, ao estabelecer uma série de implicações na *definição do objeto.

No primeiro ponto, só serão analisados os casos que adentaram à análise do Poder Judiciário e foram alvo de decisões judiciais. Não serão avaliados aqueles casos que adentraram na Polícia Civil, mas não resultaram em processo, ou, ainda os que adentraram à análise do judiciário, pois o objetivo é observar padrões de decisão. Por isso, não serão analisados boletins de ocorrência e ou laudos periciais.

No segundo ponto, não serão avaliadas decisões de segundo grau. O objetivo do estudo requer análise de aspectos fácticos dos julgados sobre “tráfico de drogas”, tais como “tipo de droga”, “quantidade apreendida”, “situações de flagrante” e “condição socioeconômica dos acusados”. Tais critérios estão, ou difusos nos autos, em fase pré-sentença, ou mal detalhados e resumidos, em fase recursal.

No terceiro e útlimo ponto a ser destacado, não serão avaliadas decisões sobre execução penal. A análise que se busca fazer nesse estudo diz respeito às condições fáticas do crime, e não de quanto tempo o preso está em cumprimento de pena de eventual situação, mesmo que seja ligada a tráfico de drogas.

Em suma, só serão analisadas sentenças sobre o mérito de ações de tráfico de drogas, com recorte temporal de 2024.

Por mais que as sentenças sejam decisões de primeiro grau menos padronizadas do que decisões de segundo grau, o que gera dificultades de análise, elas são o único documento em que encontraremos narrativas densas dos fatos, circunstâncias do delito, teses da defesa e da acusação e, por fim, a condenação resultante.

Cabe ressaltar a presença na base de dados tanto decisões do Juizado Especial Criminal e quanto da Justiça Comum, o que leva a de maiores cuidados no tratamento e interpretação do estudo. A opção por essa metodologia se deve ao fato de que, por mais que sejam procedimentos bastantes diferentes, o Juizado Especial e a Justiça Criminal analisam crime com mesmo elemento objetivo, a posse de drogas. Formalmente, tais crimes variam no que tange a sua finalidade, elemento sujetivo do crime, qual seja Consumo (Art. 28 da Lei de Drogas) ou Tráfico (Art. 33, caput da Lei de Drogas).

Tal critério, entretanto, recebe críticas dos operadores do direito por ser vago e abrir margem para autoritarismos do Poder Estatal. É fundamental, portanto, tanto pela relevância de diferenciar tais condutas, como também porque, ignorar qualquer uma das decisões implica em enviesar a amostra.

2.2 Construindo Base de Dados

2.1.2 Base de Julgados

De início, foi utilizada a busca de julgados do TJSP, através da consulta de julgados de primeiro grau do ESAJ, de maneira mais ampla possível. Inicialmente, foram localizados 68.630 julgados que citam “droga?” no ano de 2023.

Posteriormente, foi realizada o filtro de assuntos e de classes dos julgados relacionados ao mérito dos julgados já no site do ESAJ, reduzindo o número da amostra obtida para 41.487 sentenças.

Os filtros utilizados de classe foram tanto o específico, de “Procedimentos Especiais da Lei de Drogas”, como da “Ação Penal – Ordinária, Sumária, Sumaríssimo”. A opção por fazer a busca de texto “drogas” e colocar as classes genéricas “ação penal” foi utilizada buscando evitar a chamada “cifra oculta”, um viés de seleção da amostra por selecionar apenas os julgados que foram corretamente classificados.

Com os filtros realizados, foram utilizados web-scrapers do pacote [tjsp] para baixar as 41.834 decisões disponíveis em 4.149 páginas em formado HTML, o que levou 41 minutos.

knitr::opts_chunk$set(echo = TRUE)

library(tidyverse)
library(tjsp)

# Baixando Decisões -------------------------------------------------------

# Função que Baixa os Julgados e salva em HTML

# tjsp::baixar_cjpg(livre = "droga?", #Busca Droga ou Drogas
#                  inicio = "01/01/2023",
#                  fim = "31/12/2023",
#                       Retorno 68.030 decisões
#               classe = "2155,4282,8652,8653,8654,8801,8657,8803,8804,8669",
                          # Procedimentos da lei de drogas e os genéricos
#              assunto = "3607,5885,6317,6318,3608,5894,5895,5896,5897,5898,5899,5900,5901",
                          # Assuntos sobre Drogas e Genéricos 
                      # Retorno 41.634 decisões
#             diretorio = "droga_pg/data_raw")

Depois feito o download, através do pacote (tjsp), os htmls foram transformados em tabela no software R, com informações sobre o julgado, número do processo, data da sentença, assunto, classe, foro, comarca, vara, magistrado, e texto dos julgados entre outros.

# Lendo Decisões ----------------------------------------------------------

#droga_raw <- tjsp::tjsp_ler_cjpg(diretorio = "droga_pg/data_raw")

     # Salvando arquivo para Markdown
# saveRDS(droga_raw, file = "droga_pg/data_raw/droga_raw.rds")
  
droga_raw <- readRDS("droga_pg/data_raw/droga_raw.rds")

droga_raw %>%
  select(processo, assunto, classe, julgado, foro, vara, disponibilizacao)
## # A tibble: 41,487 × 7
##    processo             assunto      classe julgado foro  vara  disponibilizacao
##    <chr>                <chr>        <chr>  <chr>   <chr> <chr> <date>          
##  1 00023027320228260408 Tráfico de … Proce… "TRIBU… Foro… 1ª V… 2023-12-31      
##  2 15068473220228260564 Posse de Dr… Termo… "TRIBU… Foro… 3ª V… 2023-12-30      
##  3 15003610220228260315 Tráfico de … Ação … "TRIBU… Foro… 1ª V… 2023-12-30      
##  4 15023160220228260628 Tráfico de … Ação … "TRIBU… Foro… Vara… 2023-12-30      
##  5 15007921520218260495 Tráfico de … Proce… "TRIBU… Foro… 2ª V… 2023-12-30      
##  6 15004163820228260125 Posse de Dr… Termo… "TRIBU… Foro… Juiz… 2023-12-30      
##  7 15006431720198260583 Tráfico de … Proce… "TRIBU… Foro… 2ª V… 2023-12-29      
##  8 15026387020238260536 Tráfico de … Proce… "TRIBU… Foro… 1ª V… 2023-12-29      
##  9 15018137420238260618 Tráfico de … Proce… "TRIBU… Foro… 3ª V… 2023-12-29      
## 10 15005338920218260278 Posse de Dr… Ação … "TRIBU… Foro… Vara… 2023-12-29      
## # ℹ 41,477 more rows
glimpse(droga_raw)
## Rows: 41,487
## Columns: 13
## $ processo         <chr> "00023027320228260408", "15068473220228260564", "1500…
## $ pagina           <int> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2,…
## $ hora_coleta      <dttm> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, …
## $ duplicado        <lgl> FALSE, TRUE, FALSE, FALSE, FALSE, TRUE, FALSE, FALSE,…
## $ classe           <chr> "Procedimento Especial da Lei Antitóxicos", "Termo Ci…
## $ assunto          <chr> "Tráfico de Drogas e Condutas Afins", "Posse de Droga…
## $ magistrado       <chr> "Raquel Grellet Pereira", "Edegar de Sousa Castro", "…
## $ comarca          <chr> "Ourinhos", "São Bernardo do Campo", "Laranjal Paulis…
## $ foro             <chr> "Foro de Ourinhos", "Foro de São Bernardo do Campo", …
## $ vara             <chr> "1ª Vara Criminal", "3ª Vara Criminal", "1ª Vara", "V…
## $ disponibilizacao <date> 2023-12-31, 2023-12-30, 2023-12-30, 2023-12-30, 2023…
## $ julgado          <chr> "TRIBUNAL DE JUSTIÇA DO ESTADO DE SÃO PAULO COMARCA d…
## $ cd_doc           <chr> "BC00049530000-408-PG5ARCT-103995919", "FO000IFJP0000…

A base de dados está salva em .rds, mas também pode ser exportada via o .xlsx e .csv, caso requisitado.

2.2.2 Base de Processos

Munidos com os números do processo no padrão CNJ, podemos buscar os processos na Consulta Processual do E-SAJ para localizar dados como partes do processo, movimentações, data da distribuição e até mesmo links para inteiro teor dos documentos processuais.

## Baixando Processos
#tjsp::autenticar(login = cpf,
 #                password = senha")

#tjsp::tjsp_baixar_cpopg( droga_raw$processo ,
#                         sono = 1, 1 segundo entre cada requisição
#                         diretorio = "droga_pg/processos")


# Lendo  Processos
#dg_proc <- tjsp::tjsp_ler_dados_cpopg(diretorio = "droga_pg/processos")

dg_proc_full <- map_df(c("dg_proc.rds", "dg_proc_1.rds", "dg_proc_2.rds"),
       readRDS) %>% unique()

Baixar os processos singulares se mostrou mais complexo, não só porque envolvia baixar 41.000 páginas dos processos, um número maior, mas por dificuldades impostas pelo E-SAJ.

No primeiro ponto, buscando estabilizar seus servidores, o E-SAJ limita requisições a 1 requisição por segundo, caso contrário, a página vem em branco. Assim, para baixar todas as decisões, levaríamos 41.000 segundos, o que corresponde, aproximadamente de 11 horas e 18 minutos, para download de todas as páginas.

O segundo ponto, a necessidade de autenticação envolveu se identificar, com login CPF e Senha perante o E-SAJ, uma conduta considerada ética para web scrapers. Tal identificação caía de após 3 a 5 horas de download, o que gerou um problema de várias páginas em branco no início.

Tais problemas foram contornados com a separação dos processos em vários grupos diferentes, que possibilitaram que a máquina continuasse em funcionamento mesmo a noite, para download, enquanto a manipulação dos dados era realizada de dia.

2.3 Abordagens Estatísticas e Técnicas Utilizadas

2.3.1. Classificação das Decisões e Análise Descritiva

Com a base de julgados construída, texto de todas as sentenças estavam em disposição para análise, o que foi feito através de expressões regulares, buscando padrões de textos presentes nas sentenças.

As expressões regulares selecionaram e avaliaram a existência dos textos “Tipo de Drogas” (Maconha, Crack e Cocaína, separadas e agregadas), “Arma”, “Itens Preparatórios”, “Mandado”, , “Autorização”, “Flagrante Delito”, “Resistência”, “Populares”, “Conhecido Ponto de Tráfico”. Serão apresentadas a análise descritiva, desses processos, com seu número de frequência e eventual correlação.

droga_raw <- droga_raw %>%
          # Para Facilitar os Regex - tudo em minúsculo
  mutate(julgado = str_to_lower(julgado),
        # Análise Descritiva
         # Tipo de Drogas - Separadas
         maconha = str_detect(julgado,"maconha|cannabis|sativa|thc|skunk|haxixe|tetra|canabidiol"),
         crack = str_detect(julgado, "crack") ,
         cocaina = str_detect(julgado, "coca[ií]na") ) %>%
        # Drogas em Conjunto
    mutate(tipo_de_droga = case_when(
    maconha == F & crack == F & cocaina == F ~ "Não Mencionado",
    maconha == F & crack == T & cocaina == F ~ "Somente Crack",
    maconha == F & crack == F & cocaina == T ~ "Somente Cocaína",
    maconha == T & crack == F & cocaina == F ~ "Somente Maconha",
    maconha == T & crack == T & cocaina == F ~ "Maconha e Crack",
    maconha == T & crack == F & cocaina == T ~ "Cocaína e Maconha",
    maconha == F & crack == T & cocaina == T ~ "Cocaína e Crack",
    maconha == T & crack == T & cocaina == T ~ "Cocaína, Crack e Maconha",
        TRUE ~ "NÃO SABEMOS"),
    # Preso em Flagrante?
    flagrante = str_detect(julgado,"flagran[(te)(ância)]"),
    # Situações do Flagrante - Arma é sinal de traficância?
    arma = case_when(
      str_detect(julgado, "pistola") ~ T, #"pistola",
      str_detect(julgado, "metralhadora") ~ T, #"metralhadora",
      str_detect(julgado, "fuzil") ~ T ,#"fuzil",
      str_detect(julgado, "muni[çc][ãa]o ") ~ T,#"munição",
      str_detect(julgado, " arma") ~ T, # "arma",
      TRUE ~ FALSE),
    # Situações do Flagrante - PMs estavam patrulha?
    patrulha = case_when(
      str_detect(julgado,"patrulha") ~ "Patrulhamento",
      str_detect(julgado,"blitz") ~ "Patrulhamento",
      str_detect(julgado,"opera[cç]ão") ~ "Patrulhamento",
      TRUE ~ "Não Mencionado"),
    # Situações do Flagrante - Local como determinante da Traficância?
    ponto_venda = case_when(
      str_detect(julgado, "[(ponto)(local)] de venda") ~ "Sim",# "ponto de venda",
      str_detect(julgado, "[(ponto)(local)] de tr[áa]fico") ~ "Sim",# "ponto de tráfico",
      str_detect(julgado, "conhecido [(ponto)(local)]") ~ "Sim",#"conhecido",
      TRUE ~ "Não Mencionado"), #"Não Mencionado"
    # Cor do Réu
    negro = str_detect(julgado, "negro|pardo"),
    # Assunto para Artigos, facilitar tratamento
    assunto = case_when(
      str_detect(assunto, "Consumo Pessoal") ~ "Art. 28",
      str_detect(assunto, "Consumo Conjunto") ~ "Outro", #"Art. 33, §3º - Oferecer para Consumo",
      str_detect(assunto, "Indução") ~ "Outro", #"Art. 33, §2º - Indução",
      str_detect(assunto, "Fabricação de") ~ "Outro", #"Art. 34 - Fabricar Objeto para Tráfico",
      str_detect(assunto, "Associação para") ~ "Outro",#"Art. 35 - Associação para Tráfico",
      str_detect(assunto, "Financiamento ou") ~ "Outro",#"Art. 36 - Financiamento de Tráfico",
      str_detect(assunto, "Colaboração com") ~ "Outro",#"Art. 37 - Colaboração como Informante 
      str_detect(assunto, "Tráfico") ~ "Art. 33",
      TRUE ~ "Outro"),
    assunto= case_when(
      str_detect(assunto, "Outro") ~ "Art. 33",
      TRUE ~ assunto),
    # Itens Preparatórios 
    itens_preparatorios = case_when(
      str_detect(julgado, "sacos pl[aá]sticos") ~ "sacos plásticos",
      str_detect(julgado, "balan[çc]a de precis") ~ "balança de precisão",
      str_detect(julgado, "fabrica[çc][ãa]o de drogas") ~ "fabricação de drogas",
      str_detect(julgado, "prepara[çc][ãa]o de drogas") ~ "preparação de drogas",
      TRUE ~ "Não Mencionado"),
    # Mandado
    mandado = case_when(
      str_detect(julgado, "com mandado|com autorização judicial") ~ "com mandado",
      str_detect(julgado, "sem mandado|sem autorização judicial") ~ "sem mandado",
      str_detect(julgado, "mandado|autorização") ~ "mandado em geral",
      TRUE ~ "Não Mencionado")
     ) 

Em decisões sobre Porte para Uso Pessoal, ou o tipo da droga ou nem é mencionado, ou se restringe à maconha. Nas decisões sobre Tráfico de Drogas, encontramos detalhamento e uma variedade de drogas maior.

A droga que mais apareceria, a primeira análise, seria cocaína, mas cabe destacar que é raro ver a droga mencionada de forma singular, mas é sempre associada ao crack, que é um derivado da cocaína, com mesmo nome científico. Portanto, na maior parte dos julgados, há uma grande associação entre cocaína e crack, mas que pode se verificar pelo uso do termo técnico nos laudos toxicóligicos.

Por outro lado, indicando uma possível “tolerância” dos juízes com a droga ao ser relacionada para consumo próprio, vemos a maconha como a droga que mais aparece nas sentenças que envolvem artigo 28. A falta de fundamentação das sentenças que envolvem o uso de drogas para uso próprio, também se destaca.

Já na análise condições do flagrante, é comum ver os policiais, em seus depoimentos que “em operação de patrulhamento de rotina, avistaram indivíduo em conhecido local/ponto de tráfico”. Os dois gráficos abaixo analisam como essa forma de depoimento, genérica, é utilizada pelos policiais, e presumida de boa-fé por grande parte dos juízes, mesmo que sendo parte integrante do aparato de repressão do Estado.

## # A tibble: 4 × 3
##   ponto_venda    assunto     n
##   <chr>          <chr>   <int>
## 1 Não Mencionado Art. 28 11006
## 2 Não Mencionado Art. 33  7847
## 3 Sim            Art. 28   814
## 4 Sim            Art. 33 21820

## # A tibble: 4 × 3
##   patrulha       assunto     n
##   <chr>          <chr>   <int>
## 1 Não Mencionado Art. 28 10984
## 2 Não Mencionado Art. 33 13573
## 3 Patrulhamento  Art. 28   836
## 4 Patrulhamento  Art. 33 16094

2.3.2. Análise de Sobrevivência dos Processos

Os pacotes {survival} e {survminer} do R serão utilizados para construção dos modelos e dos gráficos, respectivamente. Será feita a análise de “Dentro dos processos de Tráfico de Drogas (indivíduo), qual tempo decorrido entre a data de distribuição (data da exposição) e a data da sentença (data final).

De início, será realizada a preparação da base de dados. O primeiro passo é a junção da base de processos, que detem a data inicial, com a base de julgados, que detem a data de julgamento do processo. Podemos, com isso, definir o lapso temporal do estudo para Análise e determinar a censura.

dg_julg_proc<- left_join(
  # Juntando Tabela de Julgados
  x = droga_raw %>%
                  select(processo, disponibilizacao, , assunto,
                         tipo_de_droga),
  # Com Tabela de Processos
  y= dg_proc_full %>%
        select(processo, distribuicao ) %>%
           mutate(distribuicao = str_extract(distribuicao,
                                    # Extraindo DATAS padrao dd/mm/yyyy
                                    "\\d{1,2}/\\d{1,2}/\\d{2,4}") %>%
                                    lubridate::dmy()),
  by= "processo") %>%
  #Definindo o Lapso Temporal e a Censura
  mutate(meses_ate_sentenca = interval( distribuicao, disponibilizacao)/months(1),
         censura = case_when(
    # Censura Intervalar      
           is.na(distribuicao) ~ 0,
    # Censura a Esquerda
       meses_ate_sentenca < 0  ~ 0,
          TRUE ~ 1)
        )

Vamos iniciar com a Análise de Sobrevivência de todas as sentenças, em um único grupo, com a curva de Keplan-Meier, que vamos utilizar a partir do pacote {survival}.

##        time n.risk n.event n.censor surv std.err upper lower
## 1 -4.806452  39590       0        1    1       0     1     1

Agora, utilizamos a Curva de Keplen-Meier para estimar a diferença do tempo de duração de um processo que envolva Tráfico de Drogas ou Porte de Drogas para Uso Pessoal.

##        time n.risk n.event n.censor surv std.err upper lower          strata
## 1 -14.77419  11189       0        1    1       0     1     1 assunto=Art. 28
##   assunto
## 1 Art. 28

Um importante fator contrintuitivo a ser observado é que, apesar do rito do delito previsto no art.28 ser mais simples, tramitando no Juizado Especial, alguns processos tendem a se extender no tempo de duração enquanto aguardam a suspensão condicional do processo. Outro fator observado foi a prescrição do delito quando há descumprimento da transação penal, elevando a duração de processos relativamente simples.

4. Conclusões

Como principal contruibuições ao trabalho da Defensoria Pública, o presente plano de Trabalho buscou observar padrões nas decisões judiciais sobre Tráfico de Drogas em 2023, que permite levantar uma série de hipóteses direcionadas para estudos mais personalizados.

Em quais pontos, geolocalizados, pelos endereços, localizados nos autos, estão os “pontos de traficância”?

Há réus presos preventivamente, em tempo maior do que a pena máxima para crimes, apenas pelos julgados que adentraram?

Por fim, ressalta-se que grande base de dados que está disponível para realização de estudos para auxílio personalizado para a Defensoria Pública de SP.

5. Referências

ASSOCIAÇÃO BRASILEIRA DE JURIMETRIA. Avaliação do Impacto de Critérios Objetivos na Distinção Entre Posse para Uso e Posse para Tráfico. 2018. Disponível em: https://abj.org.br/pesquisas/drogas-stf.

AGRESTI, Alan; Finlay, Barbara. Métodos estatísticos para as Ciências Sociais. Tradução: Lori Viali. 4ª ed. Porto Alegre: Penso, 2012.

BRUCE, Peter; Bruce, Andrew. Estatística Prática para Ciência de Dados: 50 conceitos essenciais. Tradução: Luciana Ferraz. Rio de Janeiro: Alta Books, 2019.

EPSTEIN, Lee; Martin, Andrew. An Introduction to Empirical Legal Research. Oxford: Oxford University Press, 2014, 2ªed.

EPSTEIN, Lee; KING, Gary. Pesquisa Empírica em Direito: as regras de inferência. São Paulo: Direito GV, 2013. Título Original: The Rules of Inference. Disponível em: https://repositorio.fgv.br/items/a1fbf9fe-64d8-4e2f-8430-abcae5ec21e8.

GOMES NETO, José Mário Wanderley. O que nos dizem os dados?: uma introdução à pesquisa jurídica quantitativa. Petrópolis: Vozes, 2023.

JESUS FILHO, José de; Trecenti, Júlio (2020). Pacote TJSP: Coleta e organização do Tribunal de Justiça de São Paulo URL. https://jjesusfilho.github.io/tjsp

NUNES, Marcelo Guedes. Jurimetria: Como a estatística pode reinventar o direito. São Paulo: Thomson Reuters, Revista dos Tribunais; 2019. 2ª ed.

R CORE TEAM (2024). R: A Language and Environment for Statistical Computing. R Foundation for Statistical Computing, Vienna, Austria. https://www.R-project.org/.

WICKHAM, Hadley; et al (2019). “Welcome to the tidyverse.” Journal of Open Source Software. https://doi.org/10.21105/joss.01686.