Agent Skillsaipoch/medical-research-skills › differential-expression-analysis

differential-expression-analysis

GitHub

用于批量RNA-seq或微阵列表达数据分析,识别两组生物样本间差异表达基因,并提供火山图和热图可视化。

awesome-med-research-skills/Data Analysis/differential-expression-analysis/SKILL.md aipoch/medical-research-skills

Trigger Scenarios

分析bulk RNA-seq数据以寻找差异基因 生成差异表达基因的火山图或热图

Install

npx skills add aipoch/medical-research-skills --skill differential-expression-analysis -g -y
More Options

Non-standard path

npx skills add https://github.com/aipoch/medical-research-skills/tree/main/awesome-med-research-skills/Data Analysis/differential-expression-analysis -g -y

Use without installing

npx skills use aipoch/medical-research-skills@differential-expression-analysis

指定 Agent (Claude Code)

npx skills add aipoch/medical-research-skills --skill differential-expression-analysis -a claude-code -g -y

安装 repo 全部 skill

npx skills add aipoch/medical-research-skills --all -g -y

预览 repo 内 skill

npx skills add aipoch/medical-research-skills --list

SKILL.md

Frontmatter
{
    "name": "differential-expression-analysis",
    "author": "AIPOCH",
    "license": "MIT",
    "description": "Use when analyzing bulk RNA-seq or microarray expression data to identify differentially expressed genes between two biological groups (case vs control), with volcano plots and heatmap visualization. NOT for:single-cell RNA-seq, methylation analysis, non-expression data."
}

Source: https://github.com/aipoch/medical-research-skills

Differential Expression Analysis

When to Read External Files

Situation File to Read Purpose
Need algorithm details references/algorithm.md Statistical methods, formulas, assumptions
Need to run analysis scripts/main.R Execute: Rscript scripts/main.R --input_file ... --group_file ...
Encounter errors references/troubleshooting.md Common errors and solutions
Need CLI examples references/cli-guide.md Detailed CLI usage examples
Need test data tests/data/ Sample input files for testing

Usage

Rscript scripts/main.R \
  --input_file ./expression_matrix.csv \
  --group_file ./group_info.csv \
  --output_dir ./output/ \
  --diff_method limma \
  --p_threshold 0.05 \
  --logfc_threshold 0.1 \
  --seed 42

Arguments

Short Long Type Default Description
-i --input_file character required Expression matrix file (genes as rows, samples as columns)
-g --group_file character required Group information file (sample ID + group columns)
-o --output_dir character ./output/ Output directory
-m --diff_method character limma Method: limma, deseq2, edger, t, wilcox
-n --norm_method character TMM Normalization for edgeR: TMM, RLE, upperquartile
-p --p_threshold numeric 0.05 P-value threshold
-f --logfc_threshold numeric 0.1 Log fold change threshold
-s --seed integer 42 Random seed for reproducibility

Input Format

Expression Matrix (input_file)

Genes as rows, samples as columns, CSV format with gene ID in first column.

"","GSM1442228","GSM1442229","GSM1442230"
"0610006L08Rik",3.438,3.237,3.265
"0610007P14Rik",6.734,7.017,6.807

Group File (group_file)

CSV with sample ID and group columns.

"ID","group"
"GSM1442228","Control"
"GSM1442229","Control"
"GSM1442230","DIC"

Output Files

File Description
Diffanalysis.csv Complete DE results with gene_id, logFC, Pvalue, Padj
volcano_plot.pdf Volcano plot with significance thresholds
heatmap.pdf Heatmap of top upregulated/downregulated genes
session_info.txt R session and package version info
temp/rdegs.csv Significant differentially expressed genes
temp/Diffanalysis_filtered.csv Full results with group annotations

Workflow

Step 1: Validate Input

  • Check file existence
  • Validate sample matching between expression matrix and group file
  • Verify at least 2 samples per group

Step 2: Run Differential Expression

  • Choose method: limma, DESeq2, edgeR, t-test, or Wilcoxon
  • Calculate logFC and p-values
  • Apply multiple testing correction (Benjamini-Hochberg)

Step 3: Filter Results

  • Filter by p-value and logFC thresholds
  • Classify genes as Up, Down, or Not significant

Step 4: Generate Visualizations

  • Volcano plot showing significance vs fold change
  • Heatmap of top differential genes

Methods

limma

Linear models for microarray and RNA-seq with empirical Bayes moderation. Recommended for normalized expression data (FPKM, TPM).

DESeq2

Negative binomial GLM with variance stabilization. Recommended for raw count data.

edgeR

Empirical Bayes methods with TMM normalization. Supports robust dispersion estimation.

t-test / Wilcoxon

Simple pairwise statistical tests. t-test for parametric, Wilcoxon for non-parametric.


Examples

Basic Usage (limma)

Rscript scripts/main.R \
  -i expression_matrix.csv \
  -g group_info.csv \
  -o ./output \
  -m limma

With DESeq2 for Count Data

Rscript scripts/main.R \
  -i count_matrix.csv \
  -g group_info.csv \
  -o ./output \
  -m deseq2

Custom Thresholds

Rscript scripts/main.R \
  -i expression_matrix.csv \
  -g group_info.csv \
  -o ./output \
  -p 0.01 \
  -f 0.5

Error Handling

Common Errors

Error Cause Solution
SKILL_FILE_NOT_FOUND Input file doesn't exist Check file path
SKILL_SAMPLE_MISMATCH Sample names don't match Verify group file matches expression matrix columns
SKILL_INVALID_DATA Less than 2 groups or samples per group Check group file
SKILL_FILTER_ERROR No significant genes found Relax thresholds or check data quality
SKILL_DEPENDENCY_MISSING R package not installed Install required packages

IF error persists, READ: references/troubleshooting.md


Testing

Test with Sample Data

# Check help
Rscript scripts/main.R --help

# Run with sample data
Rscript scripts/main.R \
  -i tests/data/Combined_Datasets_Matrix_mus.csv \
  -g tests/data/Combined_Datasets_mus_Group.csv \
  -o tests/output/

Validation Commands

# Count lines in output
wc -l output/Diffanalysis.csv

# Check volcano plot exists
ls -la output/volcano_plot.pdf

Implementation Checklist

  • CLI parsing with optparse
  • set.seed() for reproducibility
  • requireNamespace() dependency checks
  • Session info recording
  • Temp file cleanup
  • File reading instructions in SKILL.md
  • Modular script structure (<100 lines per file)
  • Test data provided
  • Error handling with SKILL_* codes
  • Scripts in scripts/ directory
  • References in references/ directory

Last updated: 2026-04-01 | Version: 2.0.0

Version History

  • f5ef65b Current 2026-07-24 17:04

Same Skill Collection

awesome-med-research-skills/Academic Writing/author-response-builder/SKILL.md
awesome-med-research-skills/Academic Writing/claim-strength-calibrator/SKILL.md
awesome-med-research-skills/Academic Writing/conference-abstract-writer/SKILL.md
awesome-med-research-skills/Academic Writing/consistency-checker-across-manuscript/SKILL.md
awesome-med-research-skills/Academic Writing/cover-letter-drafter/SKILL.md
awesome-med-research-skills/Academic Writing/discussion-composer/SKILL.md
awesome-med-research-skills/Academic Writing/figure-legend-writer/SKILL.md
awesome-med-research-skills/Academic Writing/grant-specific-aims-writer/SKILL.md
awesome-med-research-skills/Academic Writing/graphical-abstract-generator/SKILL.md
awesome-med-research-skills/Academic Writing/introduction-logic-builder/SKILL.md
awesome-med-research-skills/Academic Writing/introduction-section-writer/SKILL.md
awesome-med-research-skills/Academic Writing/latex-manuscript-format-converter/SKILL.md
awesome-med-research-skills/Academic Writing/medical-english-precision-editor/SKILL.md
awesome-med-research-skills/Academic Writing/paper-sprint-review/SKILL.md
awesome-med-research-skills/Academic Writing/poster-storyline-builder/SKILL.md
awesome-med-research-skills/Academic Writing/reference-integrity-checker/SKILL.md
awesome-med-research-skills/Academic Writing/reporting-guideline-compliance-checker/SKILL.md
awesome-med-research-skills/Academic Writing/results-section-structurer/SKILL.md
awesome-med-research-skills/Academic Writing/results-section-writer/SKILL.md
awesome-med-research-skills/Academic Writing/revision-strategy-planner/SKILL.md
awesome-med-research-skills/Academic Writing/slide-deck-for-lab-meeting/SKILL.md
awesome-med-research-skills/Academic Writing/table-narrative-writer/SKILL.md
awesome-med-research-skills/Academic Writing/target-journal-matcher/SKILL.md
awesome-med-research-skills/Academic Writing/title-and-abstract-optimizer/SKILL.md
awesome-med-research-skills/Data Analysis/batch-effect-correction/SKILL.md
awesome-med-research-skills/Data Analysis/cerna-analysis/SKILL.md
awesome-med-research-skills/Data Analysis/cibersort-immune-infiltration-analysis/SKILL.md
awesome-med-research-skills/Data Analysis/consensus-clustering-analysis/SKILL.md
awesome-med-research-skills/Data Analysis/decision-curve-analysis/SKILL.md
awesome-med-research-skills/Data Analysis/decision-tree-analysis/SKILL.md
awesome-med-research-skills/Data Analysis/deg-screening-analysis/SKILL.md
awesome-med-research-skills/Data Analysis/elastic-net-feature-selection/SKILL.md
awesome-med-research-skills/Data Analysis/estimate-immune-score-analysis/SKILL.md
awesome-med-research-skills/Data Analysis/external-model-validation/SKILL.md
awesome-med-research-skills/Data Analysis/gene-protein-expression-matrix-normalization/SKILL.md
awesome-med-research-skills/Data Analysis/gokegg/SKILL.md
awesome-med-research-skills/Data Analysis/gsea/SKILL.md
awesome-med-research-skills/Data Analysis/gsva-analysis-and-visualization/SKILL.md
awesome-med-research-skills/Data Analysis/hierarchical-clustering-plot/SKILL.md
awesome-med-research-skills/Data Analysis/immune-pathway-analysis/SKILL.md
awesome-med-research-skills/Data Analysis/km-survival-curve/SKILL.md
awesome-med-research-skills/Data Analysis/knn-imputation/SKILL.md
awesome-med-research-skills/Data Analysis/lasso-logistics-analysis/SKILL.md
awesome-med-research-skills/Data Analysis/LightGBM-analysis/SKILL.md
awesome-med-research-skills/Data Analysis/lncrna-regulatory-network-construction-analysis/SKILL.md
awesome-med-research-skills/Data Analysis/model-calibration-curve/SKILL.md
awesome-med-research-skills/Data Analysis/nomogram-construction/SKILL.md
awesome-med-research-skills/Data Analysis/pca-dimensionality-reduction/SKILL.md
awesome-med-research-skills/Data Analysis/ppi-network-analysis/SKILL.md

Metadata

Files
0
Version
f5ef65b
Hash
efb2b710
Indexed
2026-07-24 17:04

Главная - Вики-сайт
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-17 05:42
浙ICP备14020137号-1 $Гость$