2301_79561176 2024-04-26 12:25 采纳率: 58.3%
浏览 2

GSVA中用ssgsea的ES得分很低

ES得分很低还能用吗?还是说用的是标准化后的NES呢?r语言

  • 写回答

3条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-04-26 12:25
    关注

    引自免费微信小程序:皆我百晓生

    在使用GSVA(基因集富集分析)包进行基因集富集分析时,你会遇到两种主要的统计量:Enrichment Score (ES) 和 Normalized Enrichment Score (NES)。ES是未标准化的统计量,它反映了基因集合在样本中的整体趋势,而NES是对ES进行归一化处理后的结果,使得比较不同通路或基因集合更为方便。

    如果你发现某个基因集的ES得分较低,这可能意味着这个基因集在你的样本中并不显著富集。但是,这并不意味着你不能使用这个得分。实际上,你可以结合p值、FDR(False Discovery Rate)以及具体研究背景来判断这个得分是否具有生物学意义。通常来说,ES值越接近1表示正向富集,值越接近-1表示反向富集,值接近0则表示不富集。同时,低的p值和低的FDR会增加富集结果的可信度。

    如果你想使用标准化后的NES得分,你可以通过以下R代码计算:

    library(GSVA)
    # 假设你已经有了排序后的表达矩阵 exprs_matrix 和 GSVA 需要的 gene_sets
    result <- gsva(exprs_matrix, gene_sets, method = "ssgsea")
    # 计算 NES 分数
    nes_result <- result$nes
    

    在这个例子中,method = "ssgsea" 指定了使用单样本基因集富集分析(SSGSEA)。result$nes 将返回一个包含所有基因集 NES 值的数据框。

    为了更好地理解这些值的意义,你可以绘制分布图来可视化所有基因集的 NES 值,并标记出具有显著性(例如 p-value < 0.05 或 FDR < 0.05)的基因集。下面是一个简单的示例,展示如何绘制 NES 分布图并突出显示显著性结果:

    # 假设你已经计算了 p-values 和 FDR
    p_values <- result$pval
    fdr <- result$fdr
    
    # 创建一个逻辑向量,标识显著性结果
    significant <- fdr < 0.05
    
    # 绘制 NES 分布图
    plot(density(nes_result), xlab = "Normalized Enrichment Score", ylab = "Density",
         main = "Distribution of NES Scores")
    
    # 在图上标记显著性结果
    abline(v = quantile(nes_result[significant], c(0.25, 0.75)), col = "red", lty = 2)
    
    # 可选:绘制显著性阈值线
    abline(h = 0, lty = 2, col = "gray")
    abline(h = -log10(0.05), lty = 2, col = "blue") # 如果你使用的显著性标准为 p-value < 0.05
    

    这样,你就可以直观地看到哪些基因集有较高的 NES 值,并且是基于你的显著性标准筛选出来的。如果你对某个基因集的ES得分感到困惑,可以考虑查看其对应的NES得分以及相应的p值和FDR,综合评估其生物学意义。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 4月26日

悬赏问题

  • ¥15 找一个网络防御专家,外包的
  • ¥100 能不能让两张不同的图片md5值一样,(有尝)
  • ¥15 informer代码训练自己的数据集,改参数怎么改
  • ¥15 请看一下,学校实验要求,我需要具体代码
  • ¥50 pc微信3.6.0.18不能登陆 有偿解决问题
  • ¥20 MATLAB绘制两隐函数曲面的交线
  • ¥15 求TYPCE母转母转接头24PIN线路板图
  • ¥100 国外网络搭建,有偿交流
  • ¥15 高价求中通快递查询接口
  • ¥15 解决一个加好友限制问题 或者有好的方案