drugfindR

drugfindR provides R-based programmatic access to the iLINCS (Integrative LINCS) database for drug repurposing and functional genomics research. The package enables systematic analysis of gene expression signatures against comprehensive databases of:

Overview

drugfindR streamlines transcriptomic signature analysis by:

The package integrates with standard differential expression analysis outputs from tools like edgeR and DESeq2.

Bioconductor Acceptance

🎉 drugfindR has been accepted into Bioconductor!

The package will be available in Bioconductor Release 3.23 (accessible via the main release channel). Additionally, drugfindR is available now from the Bioconductor devel channel and will be fully integrated within one week.

Installation

From Bioconductor (Recommended)

Install from the Bioconductor devel channel (available now):

if (!requireNamespace("BiocManager", quietly = TRUE)) {
    install.packages("BiocManager")
}
BiocManager::install("drugfindR", version = "devel")

Or wait for Bioconductor Release 3.23 and install from the stable release channel:

if (!requireNamespace("BiocManager", quietly = TRUE)) {
    install.packages("BiocManager")
}
BiocManager::install("drugfindR")

Alternative Installation Methods

Install from r-universe:

install.packages("drugfindR",
    repos = c(
        "https://cogdisreslab.r-universe.dev",
        "https://cran.r-project.org"
    )
)

Or install the development version from GitHub:

if (!requireNamespace("devtools", quietly = TRUE)) {
    install.packages("devtools")
}
devtools::install_github("CogDisResLab/drugfindR")

Quick Start

drugfindR offers two analysis approaches:

1. High-Level Convenience Functions

For rapid analysis with sensible defaults, use the wrapper functions:

library(drugfindR)

# Investigate a transcriptomic signature for candidate drugs
results <- investigateSignature(
    expr = my_diffexp_data,
    outputLib = "CP", # Query chemical perturbagens
    filterThreshold = 1.5, # Filter by absolute log fold change
    geneColumn = "gene_symbol",
    logfcColumn = "logFC",
    pvalColumn = "PValue"
)

# Investigate a specific gene target
target_results <- investigateTarget(
    target = "TP53",
    inputLib = "KD", # Use knockdown signatures
    outputLib = "CP", # Find related chemical perturbagens
    filterThreshold = 0.5
)

2. Modular Pipeline Functions

For customized workflows and fine-grained control:

# Step 1: Prepare your signature
signature <- prepareSignature(diffexp_data,
    geneColumn = "gene",
    logfcColumn = "logFC",
    pvalColumn = "PValue"
)

# Step 2: Filter by thresholds
filtered_up <- filterSignature(signature, direction = "up", threshold = 1.5)
filtered_dn <- filterSignature(signature, direction = "down", threshold = 1.5)

# Step 3: Query concordant signatures
concordants_up <- getConcordants(filtered_up, ilincsLibrary = "CP")
concordants_dn <- getConcordants(filtered_dn, ilincsLibrary = "CP")

# Step 4: Generate consensus results
consensus <- consensusConcordants(concordants_up, concordants_dn,
    paired = TRUE,
    cutoff = 0.2
)

Primary Use Cases

Drug Repurposing from Transcriptomic Data

Identify candidate drugs that reverse or mimic a disease signature by comparing your expression data against LINCS chemical perturbagen signatures.

Target Validation and Functional Analysis

Discover genes and compounds with similar or opposite functional effects to a gene of interest using knockdown and overexpression signatures.

Documentation

Key Functions

Function Purpose Reference
investigateSignature() All-in-one signature analysis docs
investigateTarget() Analyze a specific gene target docs
prepareSignature() Format signatures for iLINCS docs
filterSignature() Apply thresholds to signatures docs
getConcordants() Query iLINCS for matches docs
consensusConcordants() Generate consensus results docs

Citation

If you use drugfindR in your research, please cite:

Imami AS, Sahay S, Creeden JF, McCullumsmith RE (2024).
drugfindR: Investigate iLINCS for candidate repurposable drugs.
R package version 0.99.2516.
doi:10.5281/zenodo.338354715

Getting Help

Related Resources

License

GPL-3 + file LICENSE