SuperAPI AI 工具集

pydeseq2-differential-expression

数据与分析

查看项目

更新于 10-15 22:40

技能介绍

用途:该技能使用 PyDESeq2(R DESeq2 的 Python 实现)对批量 RNA-seq 原始计数做差异表达分析,覆盖从原始计数到结果表与可视化的完整流程。

主要能力:逐基因拟合负二项广义线性模型,经经验贝叶斯收缩估计离散度,执行 Wald 检验并按 Benjamini-Hochberg 校正 FDR;支持两组比较(如处理 vs 对照)、多因素设计(如 ~batch + condition)、apeGLM log2 倍数变化收缩,以及导出上/下调基因表;火山图与 MA 图数据交由 omics-plotting 技能渲染。

使用方式:安装命令为 pip install pydeseq2 matplotlib seaborn;依赖 pydeseq2>=0.4、pandas>=1.4、numpy>=1.23、scipy>=1.11、scikit-learn>=1.1、anndata>=0.8,需 Python 3.10+。数据为原始未归一化整数计数矩阵(样本 x 基因)加样本元数据。流程:创建 DeseqDataSet 并指定 design 公式、运行 dds.deseq2()、用 DeseqStats 指定 contrast=[变量, 测试水平, 参考水平] 与 alpha,调用 ds.summary(),可选 ds.lfc_shrink(),再过滤并导出 CSV。

适用场景:两组或多组差异基因识别、含批次/协变量校正的多因素设计、将 DE 整合进 Python 流程(如与 scanpy、pandas 配合)、把 R DESeq2 工作流迁移到纯 Python 环境。若需参考 R 实现与更广的方法支持,建议改用 DESeq2(R/Bioconductor)或 edgeR。

限制:需原始计数而非已归一化数据;低表达基因需过滤;设计矩阵不可不满秩;LFC 收缩仅用于排序和可视化,不用于显著性判定;数据量过大时可能内存不足。