Case study: CTN-51

RCT

Focusing on CTN 51 data

Author

Chi Zhang

Published

March 28, 2024

Study information

CTN 51 (Lee 2018): Bup/Nx vs XR-NTX naltrexone, effectiveness of pharmacotheerapeutic aids to recovery who completed detoxification and achieved short term abstinence. n=570

  • XR-NTX (n=283): induction hurdle, higher rate of 24-week relapse, fewer successfully initiated XR-NTX (204 of 283) than Bup/Nx (270 of 287)
  • for those inducted successfully, relapse rate is similar
  • relapse: 4 consecutive weeks of any non-study opioid use (UDS or report), or 7 consecutive days of self-reported use.

Reproduce some of the results, try to understand the events involved after initiation

Key numbers

  • relapse is 4 consecutive weeks of non-study opioid use or 7 days of self-reported use
  • ITT (n=570), 24 weeks relapse greater for NTX
  • pre-protocol (n=474), similar relapse
  • relapse rate is between 57% to 65%

Things to understand

  • initiation hurdle

Datasets used

library(public.ctn0094data)
library(public.ctn0094extra)
library(CTNote)
library(dplyr)

Attaching package: 'dplyr'
The following objects are masked from 'package:stats':

    filter, lag
The following objects are masked from 'package:base':

    intersect, setdiff, setequal, union
library(purrr)
library(tibble)
library(tidyr)
library(stringr)

out <- CTNote::outcomesCTN0094

# take c51 

everybody$project |> table() # this includes all eligible

  27   30   51 
1920  868  772 
out_c51 <- left_join(everybody, out) |> 
  filter(project == 51)
Joining with `by = join_by(who)`
out_c51 |> head()
# A tibble: 6 × 64
    who project usePatternUDS             fiellin2006_abs kosten1993_isAbs
  <dbl> <fct>   <chr>                               <dbl> <lgl>           
1     3 51      o-ooo-ooooooooooooooooo                 2 FALSE           
2     4 51      -------------------o-o-o               21 TRUE            
3     7 51      ----oooooooooooooooooooo                4 TRUE            
4     9 51      oooooooooooooooooooooo                  0 FALSE           
5    18 51      ooooooooooooooooooooooooo               0 FALSE           
6    20 51      ooooooooooooooooooooooooo               0 FALSE           
# ℹ 59 more variables: krupitsky2011A_isAbs <lgl>, krupitsky2011B_abs <dbl>,
#   ling1998_isAbs <lgl>, lofwall2018_isAbs <lgl>, mokri2016_abs_time <dbl>,
#   mokri2016_abs_event <dbl>, schottenfeld2005_abs <dbl>,
#   schottenfeld2008A_abs_time <dbl>, schottenfeld2008A_abs_event <dbl>,
#   schottenfeld2008B_abs <dbl>, shufman1994_absN_time <dbl>,
#   shufman1994_absN_event <dbl>, weissLingCTN0030_isAbs <lgl>,
#   comer2006_red <dbl>, eissenberg1997_isAbs <lgl>, fiellin2006_red <dbl>, …