SuperAPI AI 工具集

pydeseq

编程与开发

查看项目

更新于 10-15 16:44

技能介绍

用途:在 Python 中运行 DESeq2 风格的差异表达分析。适用于原始整数计数矩阵的病例对照 bulk RNA-seq、需校正批次或协变量的多因素设计、把 R 版 DESeq2 流程迁移到 Python,以及希望结果保留在 pandas/AnnData 对象中以便下游质控、绘图与报告的场景。

主要能力:端到端类 DESeq2 流程,包括归一化(size factors)、离散度估计与收缩、LFC 拟合、离群值处理;Wald 检验配合 Benjamini–Hochberg FDR(padj);支持 Wilkinson/R 风格设计公式(单因素与多因素,如 ~ condition、~ batch + condition);基于 contrast=["variable","test_group","reference_group"] 的比较;可选的 Cook's distance 离群值过滤与重拟合;可选的 LFC 收缩(apeGLM 风格)用于绘图与排序;与 pandas 配合,并可互操作 AnnData。输出常见列含 baseMean、log2FoldChange、lfcSE、stat、pvalue、padj。

依赖与安装:Python 3.10–3.11,pydeseq2,pandas >= 1.4.3,numpy >= 1.23.0,scipy >= 1.11.0,scikit-learn >= 1.1.1,anndata >= 0.8.0(可选);绘图可选 matplotlib(推荐)与 seaborn。安装命令:uv pip install pydeseq2。

使用方式:读取计数矩阵(需为样本 × 基因,非负整数;若文件为基因 × 样本,加载后用 .T 转置),对齐元数据,过滤低计数基因并删除缺失条件样本;用 design 公式和 refit_cooks 构建 DeseqDataSet 并调用 deseq2();用 DeseqStats 指定 contrast、alpha、cooks_filter、independent_filter 后调用 summary();按 padj 阈值筛选显著基因,可调用 lfc_shrink() 获得更稳定的 LFC 用于可视化,并导出结果 CSV;可选绘制火山图。若仓库附带,可参考 references/api_reference.md、references/workflow_guide.md 及 scripts/run_deseq2_analysis.py。

限制:输入计数必须为非负整数且方向为样本 × 基因;LFC 收缩仅用于可视化与优先级排序,统计显著性仍基于未收缩的 Wald 检验 p 值。其他未在资料中说明的功能、收费、价格与平台情况暂未提供。