GSEA p-value和FDR计算方法

文章介绍了评估观察到效果显著性的两种方法:一是通过比较观察到的效果大小(ES)与随机分配表型后计算的ES_NULL分布来估计p值;二是通过多次固定表型标签的重排,调整基因集大小,计算FDR,控制假阳性率,并利用NES(S,π)的分布计算FDRq值,以确定特定显著性水平的基因集。

1,p-value计算方法

Estimating Significance. We assess the significance of an observed ES by comparing it with the set of scores ESNULL computed with randomly assigned phenotypes.

  1. Randomly assign the original phenotype labels to samples, reorder genes, and re-compute ES(S).
  2. Repeat step 1 for 1,000 permutations, and create a histogram of the corresponding enrichment scores ESNULL.
  3. Estimate nominal P value for S from ESNULL by using the positive or negative portion of the distribution corresponding to the sign of the observed ES(S).

2,FDR计算方法

Multiple Hypothesis Testing.

  1. Determine ES(S) for each gene set in the collection or database.
  2. For each S and 1000 fixed permutations π of the phenotype labels, reorder the genes in L and determine ES(S, π).
  3. Adjust for variation in gene set size. Normalize the ES(S, π) and the observed ES(S), separately rescal
<think>嗯,用户问的是富集分析的结果是否可以只考虑p值而不考虑校正后的p值,比如p.adjust。这个问题看起来是想了解在富集分析中统计指标的选择问题。首先,我需要回忆一下统计学中的多重检验问题。 用户可能是在做基因富集分析,比如使用clusterProfiler的enrichKEGG函数,结果中会有p值校正后的p值(比如FDR或BH方法)。他们可能发现有些结果在p值显著,但校正后就不显著了,想知道是否可以忽略校正,直接看p值。 这时候需要理解p值校正后的p值的区别。p值衡量的是单个检验的显著性,而进行多次检验时,假阳性的概率会增加。例如,做100次检验,即使所有都是不显著的,平均也会有5个假阳性(以0.05为阈值)。所以校正方法如Bonferroni或BH(FDR)是为了控制整体错误率。 用户可能的情况是,他们看到一些通路p值很低,但校正后不显著,觉得这些通路可能还是有意义的,但不确定是否应该考虑。这时候需要解释统计学上的建议,以及实际分析中的权衡。 另外,用户可能对统计学概念不太熟悉,需要用简单的例子说明。比如,如果做了很多次检验,直接看p值会导致很多假阳性,所以需要校正。但在某些探索性分析中,可能允许较高的假阳性,以发现潜在的通路,这时候可能参考p值,但需要明确说明。 还需要提到不同场景下的选择,比如严格的研究可能需要校正后的p值,而初步筛选或数据量较小时可能考虑p值。同时,用户可能担心校正后结果太少,无法解释,这时候需要建议其他方法,比如放松阈值或使用不同的校正方法。 另外,用户可能没有意识到数据预处理的问题,比如输入基因列表是否正确,ID类型是否匹配,背景基因集是否合适,这些也可能影响结果。需要确认他们的分析步骤是否正确,但当前问题主要针对统计指标的选择。 总结来说,回答需要包括:解释p值校正p值的区别,多重检验的问题,使用未校正p值的风险,不同情况下的适用性,以及实际应用中的建议。同时要给出例子,比如在严格研究中必须用校正后的值,而探索性分析中可以参考p值但需谨慎。</think>--- ### 一、核心结论 **可以但不推荐**。在富集分析中仅依赖未校正的 `pvalue` 可能存在假阳性风险,但在特定探索性场景下可结合背景谨慎使用。 --- ### 二、关键概念解析 #### 1. **`pvalue` 的本质** - 表示**单次富集检验**中观察到的基因富集程度由随机因素导致的概率 - 计算公式:$P = \frac{\text{符合观测的随机事件数}}{\text{总随机事件数}}$(超几何检验/Fisher检验) #### 2. **`padj` 的作用** - 通过校正方法(如 `BH`、`Bonferroni`)控制**多重假设检验**带来的假阳性 - 数学意义: - **FDR控制**:$padj = \frac{\text{假阳性数}}{\text{所有显著结果数}}$(BH方法) - **Family-wise控制**:$padj = pvalue \times \text{检验次数}$(Bonferroni方法) --- ### 三、风险与适用场景对比 | 指标 | 优势 | 风险 | 适用场景 | |-----------|-----------------------|-------------------------------|---------------------------| | `pvalue` | 保留更多潜在信号 | 假阳性率高(尤其检验次数多时) | 初步探索/小规模通路库筛选 | | `padj` | 控制假阳性 | 可能遗漏弱信号 | 正式分析/发表级结果验证 | --- ### 四、实操建议 #### 1. **严格分析流程** - **优先报告 `padj`**(如 `qvalue < 0.05`),符合学术规范 - **典型阈值设置**: $$ \begin{cases} pvalueCutoff = 0.05 \\ qvalueCutoff = 0.2 \quad (\text{clusterProfiler默认}) \end{cases} $$ #### 2. **探索性分析技巧** - **双重阈值筛选**: ```r # 保留 pvalue < 0.01 且 padj < 0.2 的结果 filter(result, pvalue < 0.01 & p.adjust < 0.2) ``` - **可视化辅助判断**: ```r dotplot(result, showCategory=20, color="pvalue", # 用pvalue颜色梯度 size="Count") # 用通路基因数大小 ``` #### 3. **特殊场景处理** - **当 `padj` 普遍不显著时**: 1. 检查背景基因集 (`universe`) 是否合理 2. 尝试更换校正方法: ```r enrichKEGG(..., pAdjustMethod = "fdr") # 改用宽松的FDR ``` 3. 结合通路基因数 (`GeneRatio`) 人工复核低 `pvalue` 通路 --- ### 五、统计学验证示例 假设分析 **1000 条 KEGG 通路**: - 若直接使用 $pvalue < 0.05$,理论假阳性数:$1000 \times 0.05 = 50$ - 使用 `BH` 校正后,实际假阳性数被控制在 $qvalue \times \text{显著数}$ 以内 --- ### 六、延伸思考 **为什么部分工具默认宽松阈值?** 例如 clusterProfiler 默认 `qvalueCutoff=0.2`,因为: 1. 生物学通路常存在交叉注释 2. 允许研究者发现潜在调控网络 3. 最终结论需结合实验验证 --- ### 七、经典文献参考 1. **Benjamini & Hochberg (1995)** 提出的 FDR 控制方法(`pAdjustMethod = "BH"` 的理论基础) 2. **Subramanian et al. (2005)** 在 _PNAS_ 指出 GSEA 中未校正 pvalue 的合理性(需配合基因集排序) --- **总结**:在经费充足、追求严谨性的研究中必须使用校正值;在资源有限、探索性分析时可参考 `pvalue`,但需明确标注未校正并辅以其他证据支持。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值