用途:在差异表达分析前对 RNA-seq 计数矩阵做质量控制与探索,评估测序深度、样本组成、样本关系与离群值,并决定是否移除或建模。
主要能力:加载计数矩阵并构建 DESeqDataSet,统计每样本文库大小与检出基因数;用 edgeR filterByExpr 或按最小计数与样本数过滤低表达基因;用 DESeq2 中位数比值或 edgeR TMM 估计大小因子;用 vst()(快,默认,适合 n>30)或 rlog()(慢,适合小 n 与异质设计,但大小因子跨度大时可能过度收缩)做方差稳定变换;在 VST 矩阵上做 PCA、样本距离热图;用 Cook 距离区分单基因离群与整样本离群;将已知批次放入 design(如 ~ batch + condition),未知结构可用 sva/svaseq 或 RUVSeq;用大小因子、性别基因(XIST、RPS4Y1、UTY、DDX3Y)与基因型一致性工具筛查样本互换。
必要用法:DE 检验须用原始计数加大小因子偏移,变换矩阵仅用于 QC 与可视化,不可回灌计数模型。R 示例:library(DESeq2);dds <- DESeqDataSetFromMatrix(countData=counts, colData=coldata, design=~condition);vsd <- vst(dds, blind=TRUE);plotPCA(vsd, intgroup='condition');cooks <- assays(dds)[['cooks']]。Python 可用 sklearn PCA 与 seaborn clustermap,但 log-CPM PCA 仅作快速查看,正式 QC 建议在 R 中算 VST 后导入。
适用场景:RNA-seq 计数矩阵的预处理 QC、批次与离群评估、样本身份核查。
限制:CPM/TPM 不校正组成偏差,不能用于跨样本 DE 归一化;不要对标准 RNA-seq 去重(仅 UMI 数据去重);不要将 removeBatchEffect 或 ComBat 结果送入 DESeq2/edgeR;批次与条件完全混杂时统计上无法修复。版本兼容性需自行核对,资料未提供具体收费、平台与效果信息。