rnaseq-de
Differential expression analysis for bulk RNA-seq and pseudo-bulk count matrices with QC, PCA, and contrast testing.
𧬠RNA-seq Differential Expression
This skill performs differential expression on bulk RNA-seq or pseudo-bulk count matrices.
Core Capabilities
- Input validation for count matrix and sample metadata
- Pre-DE QC (library size, detected genes, low-count filtering)
- PCA visualisation on normalized expression
- Differential expression from formula + contrast
- Volcano and MA plots
- Markdown report with reproducibility files
Input Contract
- Count matrix (
.csvor.tsv): rows are genes, columns are samples, first column is gene identifier - Metadata table (
.csvor.tsv): one row per sample, must includesample_id - Formula: e.g.
~ conditionor~ batch + condition - Contrast:
factor,numerator,denominator(e.g.condition,treated,control)
Output Structure
rnaseq_de_report/
āāā report.md
āāā figures/
ā āāā pca.png
ā āāā volcano.png
ā āāā ma_plot.png
āāā tables/
ā āāā qc_summary.csv
ā āāā normalized_counts.csv
ā āāā de_results.csv
āāā reproducibility/
āāā commands.sh
āāā environment.yml
āāā checksums.sha256
Usage
python rnaseq_de.py \
--counts counts.csv \
--metadata metadata.csv \
--formula "~ batch + condition" \
--contrast "condition,treated,control" \
--output report_dir
Safety
- Local-only processing
- Warn before overwriting existing output
- Report-level disclaimer required