Hi all,
I'd like to share ctdR, an R package I've been developing to run enrichment analysis of chemical–gene interactions using data from the Comparative Toxicogenomics Database (CTD).
The idea: given a set of genes of interest (e.g. from a DE analysis), identify the chemicals significantly associated with that gene set — useful for generating hypotheses about environmental exposures, drugs, or toxicants linked to a transcriptional signature.
What it does
It wraps four enrichment methods behind a single interface, so you can switch approach without rewriting your pipeline:
- ORA — via
clusterProfiler - GSEA — via
fgsea - CAMERA — competitive gene-set test, via
limma - GSVA — per-sample enrichment, via
GSVA
ORA/GSEA take a gene list; CAMERA/GSVA take an expression matrix.
Typical workflow — two calls:
# Download the CTD chemical–gene interactions file once from ctdbase.org, then:
ctd <- import_CTD("CTD_chem_gene_ixns.tsv.gz")
res <- enrichment_CTD(genes, ctd, method = "ORA")
Notes
- The package does not bundle or redistribute CTD data — you download it yourself and comply with the CTD licensing terms.
- Currently under review for Bioconductor. Apache-2.0.
- Repo, docs and issues: https://github.com/drake69/ctdR
I'd really appreciate feedback from people working with CTD or with chemical/toxicogenomics enrichment: does the four-methods-one-interface approach fit how you'd actually use this? Any method or output you'd expect that's missing?
Thanks!
0 answers
No answers yet.
Log in to answer this question.