com um clique
bulkrna-de
// Differential expression analysis via PyDESeq2 with Welch's t-test fallback — volcano plots, MA plots, p-value diagnostics.
// Differential expression analysis via PyDESeq2 with Welch's t-test fallback — volcano plots, MA plots, p-value diagnostics.
Build and run production workloads on Amazon Bedrock with current model availability, Converse API, agents, guardrails, AgentCore, and IAM controls. Use when implementing Bedrock inference pipelines, managed agents, or provider-agnostic model routing on AWS.
Design evaluation, tracing, monitoring, scope-control, and rollback discipline for agent systems. Use when an agent workflow is becoming important enough that you need evidence, not vibes, to decide whether it is good.
Build and operate OpenAI-first coding and agent workflows using Codex app/cloud, the Responses API, current GPT and Codex models, Agents SDK, hosted tools, tool search, MCP/connectors, skills, and approval-aware tool execution. Use when you need long-horizon software agents or OpenAI-native multi-agent orchestration.
Design, evaluate, and operate agentic systems for biomedical and scientific discovery. Use when building or selecting agents for hypothesis generation, experiment planning, autonomous notebook analysis, lab-in-the-loop validation, pathology concept discovery, or multi-agent research workflows.
Implement and operate Model Context Protocol systems safely. Use when designing MCP clients or servers, selecting transports, configuring auth, onboarding remote servers, or enforcing approval and egress controls.
Batch effect correction for multi-cohort bulk RNA-seq data using ComBat, with PCA-based visualization before and after correction.
| name | bulkrna-de |
| description | Differential expression analysis via PyDESeq2 with Welch's t-test fallback — volcano plots, MA plots, p-value diagnostics. |
| version | 0.3.0 |
| author | OmicsClaw |
| license | MIT |
| tags | ["bulkrna","differential-expression","DESeq2","volcano","MA-plot","fold-change"] |
| requires | ["numpy","pandas","matplotlib","scipy"] |
| metadata | {"omicsclaw":{"domain":"bulkrna","emoji":"🔬","trigger_keywords":["differential expression","DE analysis","DESeq2","volcano plot","fold change","DEGs","bulk DE"],"allowed_extra_flags":["--control-prefix","--lfc-cutoff","--method","--padj-cutoff","--treat-prefix"],"legacy_aliases":["bulk-de"],"saves_h5ad":false}} |
Differential expression analysis for bulk RNA-seq count matrices. Primary engine is PyDESeq2 (Python implementation of the DESeq2 model); falls back to Welch's t-test with log2FC and Benjamini-Hochberg FDR correction when PyDESeq2 is not installed.
python omicsclaw.py run bulkrna-de --demo
python omicsclaw.py run bulkrna-de --input <counts.csv> --output <dir>
python bulkrna_de.py --input counts.csv --output results/
python bulkrna_de.py --demo --output /tmp/de_demo
python bulkrna_de.py --input counts.csv --output results/ --method ttest --ctrl-prefix ctrl --treat-prefix treat
python bulkrna_de.py --input counts.csv --output results/ --padj-cutoff 0.01 --lfc-cutoff 1.5
DeseqDataSet from count matrix and sample metadatalog2(mean_treat + 1) - log2(mean_ctrl + 1)Before running DE, the system validates:
| Method | Purpose | When to use |
|---|---|---|
| Unshrunk (default) | Hypothesis testing | Statistical significance thresholds (padj < 0.05) |
| apeglm | Visualization/ranking | Shrinks large LFCs of low-expression genes; best for MA/volcano plots |
| ashr | Adaptive shrinkage | When some genes have very large true effects |
Note: Current output uses unshrunk LFCs (suitable for hypothesis testing). For visualization/ranking, consider applying shrinkage externally.
| Transform | When to use | Speed |
|---|---|---|
| VST (variance stabilizing) | > 30 samples, PCA/clustering | Fast |
| rlog (regularized log) | < 30 samples, PCA/heatmaps | Slow |
| log2(count + 1) | Quick exploration | Instant |
Important: Transformations are for visualization only — always use raw counts for DE testing.
| Format | Extension | Required Columns | Example |
|---|---|---|---|
| Count matrix | .csv | Gene identifier column + sample count columns | gene,ctrl_1,ctrl_2,ctrl_3,treat_1,treat_2,treat_3 |
output_directory/
├── report.md
├── result.json
├── figures/
│ ├── volcano_plot.png
│ ├── ma_plot.png
│ ├── de_barplot.png
│ └── pvalue_histogram.png
├── tables/
│ ├── de_results.csv
│ └── de_significant.csv
└── reproducibility/
└── commands.sh
| Parameter | Default | Description |
|---|---|---|
--method | pydeseq2 | DE method: pydeseq2 or ttest |
--ctrl-prefix | ctrl | Column name prefix for control samples |
--treat-prefix | treat | Column name prefix for treatment samples |
--padj-cutoff | 0.05 | Adjusted p-value significance threshold |
--lfc-cutoff | 1.0 | Absolute log2 fold-change threshold |
Trigger conditions:
Chaining partners:
bulkrna-qc — Upstream: count matrix QCbulkrna-enrichment — Downstream: pathway enrichment of DEG listsbulkrna-coexpression — Parallel: co-expression analysisbulkrna-splicing — Parallel: gene-level DE complements exon-level splicingReference examples tested with: scipy 1.11+, pandas 2.0+, numpy 1.24+, matplotlib 3.7+, pydeseq2 0.4+
Required: numpy, pandas, scipy, matplotlib Optional: pydeseq2 (recommended; provides full DESeq2 negative binomial GLM)
bulkrna-qc — Count matrix QC upstreambulkrna-enrichment — Pathway enrichment of DE gene lists downstreambulkrna-coexpression — Co-expression network analysisbulkrna-splicing — Alternative splicing analysis