1 Introdução

Este relatório sintetiza achados do Projeto BACO, cujo objetivo é avaliar o uso de novas substâncias psicoativas (NSP) em festas e festivais a partir da análise de amostras de fluido oral (saliva). Pretende-se, ainda, que os dados produzidos sejam divulgados de forma sistemática e integrem o painel de dados do Observatório Brasileiro de Informações sobre Drogas (Obid), com o intuito de ampliar a disponibilidade de evidências para a formulação, o monitoramento e o aprimoramento de políticas públicas na área.

Unidade de análise. As estatísticas referem-se às amostras coletadas em eventos identificados por código. Os resultados laboratoriais foram harmonizados para detectar presença/ausência por analito (ex.: DETECTADO vs ND), e integrados a variáveis do formulário (sexo, idade, autorrelato de uso e tempo desde o uso).

Objetos de interesse. - Prevalência/positividade por analito e por grupo farmacológico (Clássicas, Catinonas sintéticas, Canabinoides sintéticos, NBOMe/NBOH, Dissociativos, etc.). - Composição por evento (códigos) e co‑detecções (pares mais frequentes). - Concordância entre autorrelato de uso e detecção laboratorial. - Painel de sinais de alarme orientado pelos grupos mais prevalentes por evento.

Nota ética e de privacidade: relatório destinado a uso técnico; não contém informações de identificação pessoal. Resultados agregados devem ser preferidos para divulgação pública.

pacman::p_load(
  openxlsx, readxl, readr, stringi, stringr, dplyr, tidyr, purrr,
  janitor, lubridate, forcats, data.table, rstudioapi, DiagrammeR, flextable,
  ggplot2, plotly, kableExtra, knitr, htmltools, RColorBrewer, viridisLite, bslib
)

options(
  scipen = 999,
  dplyr.summarise.inform = FALSE
)

knitr::opts_chunk$set(echo = FALSE, message = FALSE, warning = FALSE)
Sys.setlocale("LC_CTYPE", "pt_BR.UTF-8")
## [1] "pt_BR.UTF-8"

2 Arquivos, caminhos e carga

## Resultados (original):
##    C:/Users/paula.barros/OneDrive - MINISTERIO DA JUSTIÇA/portal_obid/dados_obid/bases/BACO/resultados_amostra_baco_eventos_1_9.xlsx
## Resultados (fix):
##    C:/Users/paula.barros/OneDrive - MINISTERIO DA JUSTIÇA/portal_obid/dados_obid/bases/BACO/resultados_amostra_baco_eventos_1_9.xlsx
## Formulário (original):
##    C:/Users/paula.barros/OneDrive - MINISTERIO DA JUSTIÇA/portal_obid/dados_obid/bases/BACO/formulario_coleta_baco_eventos_1_9.xlsx
## Formulário (fix):
##    C:/Users/paula.barros/OneDrive - MINISTERIO DA JUSTIÇA/portal_obid/dados_obid/bases/BACO/formulario_coleta_baco_eventos_1_9.xlsx
## $resultados_cols
##  [1] "amostra"                           "codigo_evento"                    
##  [3] "nicotina"                          "cocaina"                          
##  [5] "benzoilecgonina"                   "norcocaina"                       
##  [7] "cocaetileno"                       "aeme"                             
##  [9] "anfetamina"                        "mdma"                             
## [11] "mda"                               "mdea_mddma_isomeros"              
## [13] "bk_dmbdp_dipentilona"              "metanfetamina"                    
## [15] "pentilona_dibutilona_isomeros"     "metilona"                         
## [17] "thc"                               "canabinol"                        
## [19] "canabidiol"                        "x25b_nboh"                        
## [21] "lsd"                               "mdmb_4en_pinaca"                  
## [23] "adb_binaca_adb_butinaca"           "x5f_emb_pica"                     
## [25] "x2_fluorodeschloroketamine_2_fdck" "deschloroketamine"                
## [27] "ketamina"                          "x6_hidroxinorketamina"            
## [29] "norketamina"                       "dmt"                              
## [31] "metilfenidato"                     "x25e_nboh"                        
## [33] "psilocina"                         "adb_4en_pinaca"                   
## [35] "x25c_nboh"                         "femproporex"                      
## [37] "lidocaina"                         "sertralina"                       
## [39] "fluoxetina"                        "bupropiona"                       
## [41] "desmetilvenlafaxina"               "venlafaxina"                      
## [43] "trazodona"                         "m_cpp_metabolito_trazodona"       
## [45] "paroxetina"                        "alprazolam"                       
## [47] "midazolam"                         "clonazepam_48"                    
## [49] "x7_aminoclonazepam"                "diazepam"                         
## [51] "nordiazepam"                       "citalopram"                       
## [53] "desmetilcitalopram"                "clorfeniramina"                   
## [55] "nafazolina"                        "hidroxizina"                      
## [57] "dimenidrinato"                     "x10_11_epoxi_carbamazepina"       
## [59] "carbamazepine"                     "meprobamato"                      
## [61] "amitriptilina"                     "nortriptilina"                    
## [63] "mirtazapina"                       "quetiapina"                       
## [65] "tramadol"                          "desmetiltramadol"                 
## [67] "zolpidem"                          "ciclobenzaprina"                  
## [69] "cloroquina"                        "carisoprodol"                     
## [71] "ondansetrona"                      "risperidona"                      
## [73] "x9_hidroxi_risperidona"            "zopiclona"                        
## [75] "oxazepam"                          "clonazepam_76"                    
## [77] "norfluoxetina"                     "lamotrigina"                      
## [79] "clozapina"                         "clomipramina"                     
## [81] "codeina"                           "prometazina"                      
## [83] "naloxona"                          "sibutramina"                      
## [85] "x85"                              
## 
## $formulario_cols
##  [1] "id_da_amostra"                                                                         
##  [2] "codigo_do_evento"                                                                      
##  [3] "sexo"                                                                                  
##  [4] "idade"                                                                                 
##  [5] "orientacao_sexual"                                                                     
##  [6] "escolaridade"                                                                          
##  [7] "e_usuario_de_substancias_psicoativas_ilicitas"                                         
##  [8] "ultimo_uso_de_substancia_psicoativa_ilicita_exceto_maconha"                            
##  [9] "qual_is_substancia_s_psicoativa_s_fez_uso_hoje"                                        
## [10] "qual_is_substancia_s_psicoativa_s_fez_uso_hoje_nome_padronizado_da_substancia_esperada"
## [11] "estimativa_do_tempo_decorrido_do_uso"                                                  
## [12] "coletor_quantisal_ficou_azul"                                                          
## 
## $dim_resultados
## [1] 1081   85
## 
## $dim_form
## [1] 1076   12

2.1 Base de dados pré tratamento

amostra

codigo_evento

nicotina

cocaina

benzoilecgonina

norcocaina

cocaetileno

aeme

anfetamina

mdma

mda

mdea_mddma_isomeros

bk_dmbdp_dipentilona

metanfetamina

pentilona_dibutilona_isomeros

metilona

thc

canabinol

canabidiol

x25b_nboh

lsd

mdmb_4en_pinaca

adb_binaca_adb_butinaca

x5f_emb_pica

x2_fluorodeschloroketamine_2_fdck

deschloroketamine

ketamina

x6_hidroxinorketamina

norketamina

dmt

metilfenidato

x25e_nboh

psilocina

adb_4en_pinaca

x25c_nboh

femproporex

lidocaina

sertralina

fluoxetina

bupropiona

desmetilvenlafaxina

venlafaxina

trazodona

m_cpp_metabolito_trazodona

paroxetina

alprazolam

midazolam

clonazepam_48

x7_aminoclonazepam

diazepam

nordiazepam

citalopram

desmetilcitalopram

clorfeniramina

nafazolina

hidroxizina

dimenidrinato

x10_11_epoxi_carbamazepina

carbamazepine

meprobamato

amitriptilina

nortriptilina

mirtazapina

quetiapina

tramadol

desmetiltramadol

zolpidem

ciclobenzaprina

cloroquina

carisoprodol

ondansetrona

risperidona

x9_hidroxi_risperidona

zopiclona

oxazepam

clonazepam_76

norfluoxetina

lamotrigina

clozapina

clomipramina

codeina

prometazina

naloxona

sibutramina

x85

OFL0001

#001

Não avaliado

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

OFL0002

#001

Não avaliado

ND

ND

ND

ND

ND

ND

ND

DETECTADO

ND

ND

ND

ND

ND

DETECTADO

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

OFL0003

#001

Não avaliado

ND

ND

ND

ND

ND

ND

DETECTADO

DETECTADO

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

OFL0004

#001

Não avaliado

DETECTADO

ND

ND

DETECTADO

ND

ND

DETECTADO

DETECTADO

ND

ND

ND

ND

ND

DETECTADO

DETECTADO

ND

DETECTADO

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

OFL0005

#001

Não avaliado

DETECTADO

ND

ND

DETECTADO

ND

ND

ND

DETECTADO

ND

ND

ND

ND

ND

DETECTADO

DETECTADO

ND

ND

DETECTADO

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

OFL0006

#001

Não avaliado

DETECTADO

ND

ND

ND

ND

ND

ND

DETECTADO

ND

ND

ND

ND

ND

DETECTADO

DETECTADO

ND

ND

DETECTADO

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

OFL0007

#001

Não avaliado

ND

ND

ND

ND

ND

ND

ND

DETECTADO

ND

ND

ND

ND

ND

ND

DETECTADO

ND

DETECTADO

DETECTADO

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

OFL0008

#001

Não avaliado

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

OFL0009

#001

Não avaliado

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

OFL0010

#001

Não avaliado

DETECTADO

ND

ND

DETECTADO

ND

ND

ND

DETECTADO

ND

ND

ND

ND

ND

DETECTADO

ND

ND

ND

DETECTADO

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

OFL0011

#002

Não avaliado

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

OFL0012

#002

Não avaliado

ND

ND

ND

ND

ND

ND

ND

DETECTADO

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

OFL0013

#002

Não avaliado

ND

ND

ND

ND

ND

ND

ND

DETECTADO

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

OFL0014

#002

Não avaliado

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

OFL0015

#002

Não avaliado

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

OFL0016

#002

Não avaliado

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

DETECTADO

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

OFL0017

#002

Não avaliado

ND

ND

ND

ND

ND

ND

ND

DETECTADO

ND

DETECTADO

ND

ND

ND

DETECTADO

DETECTADO

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

OFL0018

#002

Não avaliado

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

OFL0019

#002

Não avaliado

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

OFL0020

#002

Não avaliado

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

ND

3 Harmonização e estrturação dos dados

A etapa de harmonização e estruturação dos dados tem como objetivo transformar os arquivos brutos do laboratório (raw_resultados) e do formulário aplicado em campo (raw_form) em uma base analítica única, a fim de realizar os cruzamentos entre perfil dos participantes e resultados das análises de fluido oral.

Primeiro, são realizados procedimentos de limpeza e padronização de nomes de variáveis em ambas as bases, incluindo a remoção de colunas totalmente vazias ou identificadas como placeholders (por exemplo, colunas “Unnamed” geradas por planilhas). Essa etapa garante que apenas informações efetivamente preenchidas sejam mantidas, reduzindo o ruído e o risco de erros nas etapas seguintes.

Em seguida, o script identifica de forma robusta e tolerante a variações de nomenclatura as colunas que funcionam como chaves de vinculação entre as bases: o identificador da amostra e o código do evento. Essa detecção é feita por meio de padrões de texto (expressões regulares), o que permite acomodar diferenças como “amostra”, “id_da_amostra” ou “amostra_id” sem necessidade de intervenção manual. Uma vez identificadas, essas chaves são normalizadas (remoção de espaços, conversão para maiúsculas) e reorganizadas para ocupar posição de destaque na base de resultados.

Na sequência, os resultados laboratoriais por analito são reorganizados de formato wide para formato long, de modo que cada linha passe a representar a combinação “amostra–analito–status”. Os diferentes rótulos utilizados pelo laboratório (por exemplo, “Detectado”, “Positivo”, “ND”, “Não Detectado”) são mapeados para categorias padronizadas (“DETECTADO” e “ND”), com uma regra explícita para tratar informações não avaliadas ou não testadas como ausentes. A partir desse status padronizado, é criada uma variável binária (positivo), que assume valor 1 para analitos detectados e 0 nos demais casos. Essa estrutura facilita tanto os cálculos de frequência quanto os modelos de co-ocorrência entre substâncias.

A partir da base longa, duas estruturas complementares são derivadas. A primeira é uma matriz binária em formato largo, em que cada analito passa a ser uma coluna com valores 0/1 por amostra, permitindo análises de co-ocorrência e perfis de combinação de substâncias. A segunda é uma base agregada por amostra, que sintetiza, para cada amostra e evento, o número total de analitos detectados (qtd_positivos) e um indicador lógico (qualquer_positivo) que sinaliza se houve ao menos um resultado positivo.

Paralelamente, a base do formulário é enxugada em um objeto form_slim, que seleciona apenas as variáveis de interesse analítico (sexo, idade, orientação sexual, escolaridade, uso de substâncias ilícitas, tempo desde o último uso, informações sobre consumo no dia do evento, entre outras). A seleção dessas colunas também é feita de forma tolerante a variações de texto, utilizando padrões que buscam termos-chave (por exemplo, “orientação sexual”, “fez uso hoje”, “quantisal azul”). Nos casos em que determinada coluna não exista na versão específica do formulário, o campo correspondente é preenchido com valores ausentes, preservando a estrutura da base.

Por fim, a base agregada de resultados laboratoriais é vinculada ao formulário por meio das chaves normalizadas (amostra e codigo_evento). O produto dessa etapa é a base_mestra, que reúne, em uma mesma tabela, o resumo da positividade por amostra, as variáveis sociodemográficas e de comportamento autorreferidas e a matriz binária de presença/ausência de cada analito. O script também gera mensagens de diagnóstico sobre o número de linhas em cada base e sobre eventuais amostras sem par (amostras presentes em resultados, mas não no formulário, e vice-versa), o que auxilia na auditoria da qualidade do linkage e na identificação de perdas ou inconsistências na cadeia de registro dos dados.

## ✓ Linhas em resultados:    1081
## ✓ Linhas no formulário:    1076
## ✓ Amostras após o join:    1081
## ✓ Amostras com sexo inf.:  0
## ✓ Amostras com idade inf.: 0

3.1 Classificação de analitos em grupos (ajustável)

Antes de avançar para as análises propriamente ditas, é necessário agrupar os analitos em categorias farmacológicas que façam sentido do ponto de vista epidemiológico e de comunicação de risco. Em vez de trabalhar substância a substância, o relatório passa a operar com grupos de interesse – por exemplo, canabinoides sintéticos, catinonas sintéticas, clássicas estimulantes/psicodélicas, cocaínicos, dissociativos, entre outros. Isso permite tanto uma leitura mais sintética dos resultados quanto a construção de painéis de “sinais de alerta” por família de substâncias, o que é particularmente útil para fins de vigilância e prevenção.

No chunk abaixo, cada analito é mapeado para um único grupo principal, a partir de regras baseadas em expressões regulares (regex) que procuram palavras-chave no nome padronizado do analito. A ordem dos grupos na lista define a prioridade: ao encontrar a primeira correspondência, o analito é atribuído àquele grupo. Analitos que não se encaixarem em nenhum padrão específico são classificados provisoriamente como “Outros/indefinidos”, funcionando como uma categoria de estacionamento que pode ser revisada à medida que novas rodadas de curadoria forem feitas.

Tabela — Mapeamento de analitos em grupos (ajustável)
analito grupo
nicotina Outros/indefinidos
cocaina Cocaínicos
benzoilecgonina Cocaínicos
norcocaina Cocaínicos
cocaetileno Cocaínicos
aeme Cocaínicos
anfetamina Clássicas (estimulantes/psicodélicas)
mdma Clássicas (estimulantes/psicodélicas)
mda Clássicas (estimulantes/psicodélicas)
mdea mddma isomeros Clássicas (estimulantes/psicodélicas)
bk dmbdp dipentilona Catinonas sintéticas (NSP)
metanfetamina Clássicas (estimulantes/psicodélicas)
pentilona dibutilona isomeros Catinonas sintéticas (NSP)
metilona Outros/indefinidos
thc Canabinoides (clássicos)
canabinol Canabinoides (clássicos)
canabidiol Canabinoides (clássicos)
x25b nboh Feniletilaminas NBOMe/NBOH (NSP)
lsd Clássicas (estimulantes/psicodélicas)
mdmb 4en pinaca Canabinoides sintéticos (NSP)
adb binaca adb butinaca Canabinoides sintéticos (NSP)
x5f emb pica Outros/indefinidos
x2 fluorodeschloroketamine 2 fdck Dissociativos
deschloroketamine Dissociativos
ketamina Dissociativos
x6 hidroxinorketamina Dissociativos
norketamina Dissociativos
dmt Tryptaminas
metilfenidato Clássicas (estimulantes/psicodélicas)
x25e nboh Feniletilaminas NBOMe/NBOH (NSP)
psilocina Tryptaminas
adb 4en pinaca Canabinoides sintéticos (NSP)
x25c nboh Feniletilaminas NBOMe/NBOH (NSP)
femproporex Outros/indefinidos
lidocaina Outros/indefinidos
sertralina Outros/indefinidos
fluoxetina Outros/indefinidos
bupropiona Outros/indefinidos
desmetilvenlafaxina Outros/indefinidos
venlafaxina Outros/indefinidos
trazodona Outros/indefinidos
m cpp metabolito trazodona Outros/indefinidos
paroxetina Outros/indefinidos
alprazolam Outros/indefinidos
midazolam Outros/indefinidos
clonazepam 48 Outros/indefinidos
x7 aminoclonazepam Outros/indefinidos
diazepam Outros/indefinidos
nordiazepam Outros/indefinidos
citalopram Outros/indefinidos
desmetilcitalopram Outros/indefinidos
clorfeniramina Outros/indefinidos
nafazolina Outros/indefinidos
hidroxizina Outros/indefinidos
dimenidrinato Outros/indefinidos
x10 11 epoxi carbamazepina Outros/indefinidos
carbamazepine Outros/indefinidos
meprobamato Outros/indefinidos
amitriptilina Outros/indefinidos
nortriptilina Outros/indefinidos
mirtazapina Outros/indefinidos
quetiapina Outros/indefinidos
tramadol Outros/indefinidos
desmetiltramadol Outros/indefinidos
zolpidem Outros/indefinidos
ciclobenzaprina Outros/indefinidos
cloroquina Outros/indefinidos
carisoprodol Outros/indefinidos
ondansetrona Outros/indefinidos
risperidona Outros/indefinidos
x9 hidroxi risperidona Outros/indefinidos
zopiclona Outros/indefinidos
oxazepam Outros/indefinidos
clonazepam 76 Outros/indefinidos
norfluoxetina Outros/indefinidos
lamotrigina Outros/indefinidos
clozapina Outros/indefinidos
clomipramina Outros/indefinidos
codeina Outros/indefinidos
prometazina Outros/indefinidos
naloxona Outros/indefinidos
sibutramina Outros/indefinidos
x85 Outros/indefinidos

4 Indicadores gerais

Antes de entrar nos recortes por grupo farmacológico e por evento, é útil olhar para um indicador-síntese de positividade global das amostras. Aqui, considera-se “amostra positiva” toda aquela em que ao menos um analito foi detectado (qualquer_positivo = TRUE), independentemente de qual substância ou combinação esteja presente.

No chunk abaixo são calculados três parâmetros básicos: - (i) o número total de amostras válidas na base analítica (n_amostras), - (ii) o número de amostras com pelo menos um analito detectado (n_positivas) e - (iii) a taxa de positividade global, dada pela razão entre amostras positivas e o total de amostras.

A Tabela 1 resume esses indicadores gerais, que funcionam como um primeiro termômetro da intensidade de detecção no conjunto de eventos analisados, antes da estratificação por grupos de substâncias ou por características do público.

Tabela 1 — Indicadores gerais
n_amostras n_positivas taxa_positividade
1081 1029 0.952

4.1 Positividade por evento

Tabela — Positividade por evento (amostra com ≥ 1 analito detectado)
codigo_evento n_amostras n_positivas taxa_positividade
#008 96 96 100.0%
#009 85 85 100.0%
#007 683 660 96.6%
#006 104 99 95.2%
#003 11 10 90.9%
#005 56 47 83.9%
#004 26 21 80.8%
#001 10 7 70.0%
#002 10 4 40.0%

4.2 Positividade por analito (Top 20)

Após a descrição dos indicadores globais, o próximo passo é observar quais analitos aparecem com maior frequência de resultados positivos. Em vez de olhar apenas para a positividade agregada, aqui se estima, para cada analito individual, o número de amostras testadas, o número de amostras positivas e a respectiva taxa de positividade (proporção de positivos entre as amostras em que aquele analito foi analisado).

No chunk abaixo, a base resultados_long é filtrada para registros com status válido e, em seguida, são calculados, por analito, o total de testes (n), o total de positivos (positivos) e a taxa de positividade (taxa). Esses dados são então ordenados pelo número absoluto de positivos, e são apresentados os 20 analitos com maior número de detecções.

O gráfico em barras horizontais exibe, para cada analito do Top 20, o número de positivos no eixo X e o nome do analito no eixo Y, com rótulos que combinam porcentagem de positividade e contagem absoluta (por exemplo, “40,6% • 439”). Essa visualização permite identificar rapidamente quais substâncias concentram a maior carga de detecções no conjunto de amostras analisadas, servindo como base para a discussão posterior por grupos farmacológicos e por evento.

4.3 Positividade por grupo farmacológico

Depois de olhar para cada analito isoladamente, o passo seguinte é observar o perfil de positividade por grupo farmacológico, usando justamente o mapeamento definido na seção anterior. Aqui o foco deixa de ser a substância específica e passa a ser a “família” a que ela pertence, o que é mais informativo para fins de vigilância, comunicação de risco e planejamento de ações de prevenção.

No chunk abaixo, cada registro de resultados_long com status válido é associado ao seu grupo (grupo) e, para cada grupo farmacológico, são calculados:

  • o número total de medições realizadas (n_medicoes),

  • o número absoluto de resultados positivos (positivos) e

  • a taxa de positividade dentro do grupo (taxa), definida como a proporção de medições positivas entre todas as medições daquele grupo.

O gráfico apresenta, em barras verticais, o número de positivos por grupo, com rótulos que combinam a taxa de positividade em porcentagem e o total de positivos (por exemplo, “24,4% • 790”). Essa visão permite identificar quais classes de substâncias concentram mais detecções no conjunto de amostras — distinguindo, por exemplo, a contribuição relativa de canabinoides clássicos, cocaínicos, dissociativos e NSP (canabinoides sintéticos, catinonas, NBOMe/NBOH) — e quais grupos aparecem com baixa frequência ou ainda de forma mais difusa na categoria “Outros/indefinidos”.

4.4 Composição por evento

No chunk abaixo, cada combinação codigo_evento × grupo farmacológico é resumida pelo número de resultados positivos, e o total de positivos por evento é decomposto em contribuições de cada grupo. O gráfico em barras empilhadas mostra, ao longo do eixo X, os eventos (#001, #002, …) e, no eixo Y, o número total de positivos, com as cores representando os diferentes grupos (canabinoides clássicos, cocaínicos, dissociativos, NSP, etc.).

Essa visualização permite identificar rapidamente eventos com maior carga absoluta de detecções e, sobretudo, diferenças qualitativas na “assinatura” de substâncias entre eventos – por exemplo, festas dominadas por canabinoides clássicos, eventos com maior peso de cocaínicos ou com presença relevante de NSP, o que é particularmente importante para o planejamento de ações de alerta e prevenção direcionadas ao contexto de cada festa/festival.

4.5 Co‑detecções (pares mais frequentes)

Nesta subseção, é construída uma matriz de co-ocorrência entre analitos, a partir da base binária resultados_wide_bin (0 = não detectado, 1 = detectado). Para cada par de analitos, contabiliza-se em quantas amostras ambos foram detectados simultaneamente, gerando uma medida de co-detecção.

No chunk acima, essa matriz é convertida em tabela e filtrada para pares distintos (A–B, sem duplicar B–A) com pelo menos uma co-ocorrência. Em seguida, são destacados os 30 pares mais frequentes, apresentados em um gráfico de barras horizontais, em que o eixo X representa o número de co-ocorrências e o eixo Y identifica o par de analitos (por exemplo, “mda × mdma”, “mda × thc”). Essa visualização permite identificar padrões de policonsumo ou combinações recorrentes de substâncias nas amostras, informação relevante tanto para a caracterização do perfil de uso quanto para a avaliação de riscos associados a determinadas combinações.

5 Perfil sociodemográfico das detecções

5.1 Distribuição por sexo

Atenção: nenhum registro possui sexo informado (1081 de 1081 registros com sexo ausente ou em branco).
##  [1] "id_da_amostra"                                                                         
##  [2] "codigo_do_evento"                                                                      
##  [3] "sexo"                                                                                  
##  [4] "idade"                                                                                 
##  [5] "orientacao_sexual"                                                                     
##  [6] "escolaridade"                                                                          
##  [7] "e_usuario_de_substancias_psicoativas_ilicitas"                                         
##  [8] "ultimo_uso_de_substancia_psicoativa_ilicita_exceto_maconha"                            
##  [9] "qual_is_substancia_s_psicoativa_s_fez_uso_hoje"                                        
## [10] "qual_is_substancia_s_psicoativa_s_fez_uso_hoje_nome_padronizado_da_substancia_esperada"
## [11] "estimativa_do_tempo_decorrido_do_uso"                                                  
## [12] "coletor_quantisal_ficou_azul"
## Colunas com potencial sociodemográfico:
## [1] "sexo"              "idade"             "orientacao_sexual"
## [4] "escolaridade"
Amostra das colunas sociodemográficas no formulário
sexo idade orientacao_sexual escolaridade
Masculino 19 Heterossexual Não informado
Masculino 21 Homossexual Superior incompleto
Masculino 21 Heterossexual Ensino médio completo
Masculino 24 Heterossexual Ensino médio completo
Masculino 28 Bissexual Pós-graduação
Masculino 31 Homossexual Superior completo
Masculino 21 Heterossexual Ensino médio incompleto
Masculino 25 Bissexual Ensino médio completo
Não informado 18 Bissexual Superior completo
Feminino 28 Bissexual Superior completo

5.2 Distribuição por faixa etária

Atenção: nenhuma idade numérica disponível em base_mestra (idade ausente ou não numérica em 1081 de 1081 registros). Verifique o linkage com o formulário.

5.3 Positividade por sexo e faixa etária

Atenção: não há idades suficientes para montar faixa_idade. Verifique o preenchimento do formulário e o linkage.

5.4 Mapa de calor analito × evento (Top 20)

5.5 Concordância de auto relato

Concordância entre autorrelato de uso hoje e detecção laboratorial
usou_hoje_livre qualquer_positivo n pct
NA NA NA NA
:————— :—————– –: :—

5.6 Distribuição de Analitos Positivos por Amostra

6 Painel orientado a prevenção — sinais de alarme

A tabela abaixo associa grupos de substâncias a sinais/sintomas de alarme e mensagens-chave. Use como base; ajuste com a equipe clínica/epidemiológica.

Sinais de alarme e mensagens-chave por grupo (base para campanhas)
grupo sinais_alarme mensagens_chave
Clássicas (estimulantes/psicodélicas) Hipertermia, desidratação, taquicardia, agitação, confusão. Hidrate-se de forma regular (sem excessos), pause para resfriar, evite sobreaquecimento e uso combinado com outras drogas/álcool; procure ajuda se palpitações ou confusão persistirem.
Catinonas sintéticas (NSP) Taquicardia intensa, hipertermia, ansiedade, agitação psicomotora. Evite re-dosing, mantenha-se com companhia, identifique postos de saúde no evento; se temperatura corporal elevada ou confusão/agitação prolongada, busque atendimento imediatamente.
Canabinoides sintéticos (NSP) Náusea/vômitos, ansiedade/pânico, confusão, alucinações, sedação ou agitação. Evite misturar; se quadro ansioso-psicótico, procure área de cuidado; não conduza veículos.
NBOMe/NBOH (feniletilaminas) Vasoconstrição, taquicardia, hipertensão, agitação, risco de overdose em microdoses mal calibradas. Evite gotas/selos de procedência desconhecida; se dor torácica/cefaleia intensa, procure ajuda.
Dissociativos (ketamina e congêneres) Ataxia, confusão, dissociação, risco de quedas e afogamentos. Evite áreas de desnível/água; permaneça com acompanhante; se confusão severa ou trauma, acione suporte.
Cocaínicos Dor torácica, taquicardia, ansiedade, hipertermia. Evite esforços intensos e misturas com álcool (cocaetileno); se dor torácica/palpitações, buscar avaliação.

6.1 Sugestão de foco por evento (baseada na composição detectada)

Top 2 grupos por evento + sinais de alarme sugeridos
codigo_evento grupo n pct rank sinais_alarme mensagens_chave
#001 Clássicas (estimulantes/psicodélicas) 13 0.4193548 1 Hipertermia, desidratação, taquicardia, agitação, confusão. Hidrate-se de forma regular (sem excessos), pause para resfriar, evite sobreaquecimento e uso combinado com outras drogas/álcool; procure ajuda se palpitações ou confusão persistirem.
#001 Canabinoides (clássicos) 9 0.2903226 2 NA NA
#002 Clássicas (estimulantes/psicodélicas) 3 0.4285714 1 Hipertermia, desidratação, taquicardia, agitação, confusão. Hidrate-se de forma regular (sem excessos), pause para resfriar, evite sobreaquecimento e uso combinado com outras drogas/álcool; procure ajuda se palpitações ou confusão persistirem.
#002 Canabinoides (clássicos) 2 0.2857143 2 NA NA
#003 Clássicas (estimulantes/psicodélicas) 13 0.5000000 1 Hipertermia, desidratação, taquicardia, agitação, confusão. Hidrate-se de forma regular (sem excessos), pause para resfriar, evite sobreaquecimento e uso combinado com outras drogas/álcool; procure ajuda se palpitações ou confusão persistirem.
#003 Canabinoides (clássicos) 7 0.2692308 2 NA NA
#004 Canabinoides (clássicos) 32 0.4266667 1 NA NA
#004 Clássicas (estimulantes/psicodélicas) 20 0.2666667 2 Hipertermia, desidratação, taquicardia, agitação, confusão. Hidrate-se de forma regular (sem excessos), pause para resfriar, evite sobreaquecimento e uso combinado com outras drogas/álcool; procure ajuda se palpitações ou confusão persistirem.
#005 Outros/indefinidos 51 0.5049505 1 NA NA
#005 Canabinoides (clássicos) 29 0.2871287 2 NA NA
#006 Outros/indefinidos 139 0.3829201 1 NA NA
#006 Canabinoides (clássicos) 86 0.2369146 2 NA NA
#007 Clássicas (estimulantes/psicodélicas) 963 0.3726780 1 Hipertermia, desidratação, taquicardia, agitação, confusão. Hidrate-se de forma regular (sem excessos), pause para resfriar, evite sobreaquecimento e uso combinado com outras drogas/álcool; procure ajuda se palpitações ou confusão persistirem.
#007 Outros/indefinidos 834 0.3227554 2 NA NA
#008 Clássicas (estimulantes/psicodélicas) 198 0.3188406 1 Hipertermia, desidratação, taquicardia, agitação, confusão. Hidrate-se de forma regular (sem excessos), pause para resfriar, evite sobreaquecimento e uso combinado com outras drogas/álcool; procure ajuda se palpitações ou confusão persistirem.
#008 Canabinoides (clássicos) 157 0.2528180 2 NA NA
#009 Clássicas (estimulantes/psicodélicas) 166 0.3306773 1 Hipertermia, desidratação, taquicardia, agitação, confusão. Hidrate-se de forma regular (sem excessos), pause para resfriar, evite sobreaquecimento e uso combinado com outras drogas/álcool; procure ajuda se palpitações ou confusão persistirem.
#009 Canabinoides (clássicos) 110 0.2191235 2 NA NA

7 Exportações (dados tratados)

Downloads prontos: resultados_long, base_mestra e dicionário de analitos.

8 Observações finais

  • As regras de classificação regex podem (e devem) ser refinadas para o conjunto de analitos do BACO.
  • Recomenda-se manter um dicionário externo (CSV/Excel) com "analito → grupo" para governança.
  • Para campanhas, alinhar as mensagens com a equipe clínica e o plano de comunicação do evento/órgão.