The goal of {clintrialx}
is to fetch clinical trials data from freely
available registries. Currently, it supports querying the
-
ClinicalTrials.gov registry using its V2 API and
-
CTTI AACT (Public Access to Aggregate Content of ClinicalTrials.gov).
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")
library(clintrialx)
-
Sign up and create an account. It’s free.
-
The
username
andpassword
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
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"))
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
)
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
# 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)
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!
You can fetch version information directly from the package:
version_info(source = "clinicaltrials.gov")
🚀 Ready to contribute? Let’s make clintrialx even better!
- Fork the GitHub repo.
- Check out your development branch from the dev branch.
- Do your work on a feature (ftr) branch.
- Raise a PR against the dev branch of the clintrialx repo.
- Sit back and relax while I review it!
💬 Questions or Feedback? Feel free to open an issue on GitHub Issues page.
🌟 Enjoying clintrialx
? Please consider giving it a star on
GitHub! Your support helps
this project grow and improve.
More updates to come. Happy coding! 🎉