Learn R Programming

ClinTrialX

The goal of {clintrialx} is to fetch clinical trials data from freely available registries. Currently, it supports querying the

Installation

Install the package from CRAN with:

install.packages("clintrialx")

You can install this package from GitHub with:

you’ll need the devtools package for this

# install.packages("devtools")
devtools::install_github("ineelhere/clintrialx")

Check installation

library(clintrialx)

Setup AACT account

Only if you wish to use AACT as a source for the data

  • Visit https://aact.ctti-clinicaltrials.org/users/sign_up

  • Sign up and create an account. It’s free.

  • The username and password will be needed to fetch data using this package.

  • Save it in a .Renviron file, for example-

    user =  "random_name"
    password = "random_password"
  • Now that the file is created, load the variable with the command readRenviron("path/to/.Renviron)

  • You’re all set!

Query the ClinicalTrials.gov Registry

Based on NCT IDs

Fetch one or multiple trial records based on NCT IDs. You can opt to fetch some specific fields or all fields available at source (default).

library(clintrialx)
ctg_get_nct(c("NCT02967965", "NCT04000165", "NCT01007279", "NCT02376244", "NCT01179776"),
                          fields = c("NCT Number", "Study Title", "Study Status", "Sponsor"))

Based on fileds

Supports filtering by condition, location, title keywords, intervention, and overall status.

ctg_get_fields(
     condition = "Cancer",
     location = "Kolkata",
     title = NULL,
     intervention = "Drug",
     status = c("ACTIVE_NOT_RECRUITING", "RECRUITING"),
     page_size = 10
)

Based on fields - Bulk download

Download all available data for your query. No limits!

Supports filtering by condition, location, title keywords, intervention, and overall status.

df <- ctg_bulk_fetch(location="india")

Query the CTTI AACT

Run Custom Queries

# Set environment variables for database credentials in .Renviron and load it
# readRenviron(".Renviron")

# Connect to the database
con <- aact_connection(Sys.getenv('user'), Sys.getenv('password'))

# Run a custom query
query <- "SELECT nct_id, source, enrollment, overall_status FROM studies LIMIT 5;"
results <- aact_custom_query(con, query)

# Print the results
print(results)

Trial Data HTML Reports

Currently works for data from ClinicalTrials.Gov

Visit here for an exqample report - https://www.indraneelchakraborty.com/clintrialx/report.html

#first get the data in a R dataframe
my_clinical_trial_data <- ctg_bulk_fetch(condition="cancer")
#now pass it to the reports function
ctg_data_report(
  ctg_data = my_clinical_trial_data,
  title = "Clinical Trials Analysis",
  author = "Indra",
  output_file = "reports/clinical_trials.html",
  theme = "flatly",
  color_palette = c("#4E79A7", "#F28E2B", "#E15759", "#76B7B2", "#59A14F", "#EDC948"),
  include_data_quality = TRUE,
  include_interactive_plots = TRUE,
  custom_footer = "Proprietary report generated by SomeGreatOrg Inc."
)

# Generate a report with static plots and no data quality assessment
ctg_data_report(
  ctg_data = my_clinical_trial_data,
  title = "Quick Clinical Trial Overview",
  include_data_quality = FALSE,
  include_interactive_plots = FALSE
)

Check the path reports/clinical_trials.html on your local. It will have the html report file.

Cool stuff - It also has the codes to the plots!

Data Sources

You can fetch version information directly from the package:

version_info(source = "clinicaltrials.gov")

Get Involved

Copy Link

Version

Install

install.packages('clintrialx')

Monthly Downloads

170

Version

0.1.1

License

Apache License 2.0

Issues

Pull Requests

Stars

Forks

Maintainer

Indraneel Chakraborty

Last Published

March 12th, 2025

Functions in clintrialx (0.1.1)

version_info

Get API Version Information
ctg_get_fields

Query ClinicalTrials.gov API
ctg_data_report

Generate a Comprehensive Clinical Trial Data Report
ctg_bulk_fetch

Bulk Fetch Clinical Trial Data from ClinicalTrials.gov API
hello

Print a Welcome Message
aact_custom_query

Run a custom query
ctg_get_nct

Fetch Clinical Trial Data Based on NCT ID
ctg_count

Get Count of Clinical Trials from ClinicalTrials.gov
aact_check_connection

Check database connection
aact_connection

Connect to AACT PostgreSQL database