gsea结果分析图怎么看_GSEA结果解读

1 Enrichment score(ES)

ES是GSEA最初的结果,反应全部杂交data排序后,在此序列top或bottom富集的程度。

ES原理:扫描排序序列,当出现一个功能集中的gene时,增加ES值,反之减少ES值,所以ES是个动态值。最终ES的确定是讲杂交数据排序序列所在位置定义为0,ES值定义为距离排序序列的最大偏差.

ES为正,表示某一功能gene集富集在排序序列前方

ES为负,表示某一功能gene集富集在排序序列后方。

图中的最高点为此通路的ES值,中间表示杂交数据的排序序列。竖线表示此通路中出现的芯片数据集中的gene。

2 NES

由于ES是根据分析的数据集中的gene是否在一个功能gene set中出现来计算的,但各个功能gene set中包含的gene数目不同,且不同功能gene set与data之间的相关性也不同,因此,比较data set在不同功能gene set中的富集程度要对ES进行标准化处理,,也就是NES

NES=某一功能gene set的ES/数据集所有随机组合得到的ES平均值

NES是主要的统计量。

3 FDR

NES确定后,判断其中可能包含的错误阳性发现率。FDR=25%意味着对此NES的确定,4次可能错 1次。GSEA结果中,高亮显示FDR<25%的富集set。因为从这些功能gene中最可能产生有意义的假设,促进进一步研究。大多数情况下,选FDR<25%是合适的,但是,假如分析的芯片data set较少,选择的是探针随机组合而不是表型组合,若p不严格,那么应该选FDR<5%。

一般而言,NES绝对值越大,FDR值就越小,说明富集程度高,结果可靠。

4 名义p值 nominal p-value

描述的是针对某一功能gene子集得到的富集得分的统计显著性,显然,p越小,富集性越好。

以上4个参数中,只有FDR进行了功能gene子集大小和多重假设检验矫正,而p值没有,因此,如果结果中有一个高度富集的功能gene子集,而其有很小的名义p-value和大的FDR意味着富集并不显著。

我的一个具体结果解读:92/681 gene sets are upregulated in PH

0 gene sets are significantly enriched at FDR<25%

1 gene sets are significantly enriched at n p-value <1%

1 gene sets are significantly enriched at n p-value <5%

在选择的BP中,有681个gene sets,92个PH中上调,其中75%的正确率支持0条子集上调,1个BP的gene表达上调名义p值<0.01。总体结果并不理想。

备注

GSEA富集结果太少说明:

无gene set被富集。

可能是因为分析的样本太少,关注的生物信息太微弱,或正在分析的功能集不能很好代表你所关心的生物过程,但仍然可以看下top ranked gene sets,这些信息可能会为你的假说提供微弱的证据。当然也可以尝试考虑分析其他gene sets,或增加samples

GSEA富集结果太多说明:

太多的功能子集被富集了。

可能是因为很多的gene sets代表同一生物信号,这可以在gene sets中查看leading edge sbusets来查看。或者也可以查看具体区别进行加工,比如samples来自不同labs,操作者不一样等。

  • 4
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: GSEA(基因集富集分析)是一种常用的生物信息学分析方法,用于研究基因集在基因表达谱中的富集情况。下面是使用R语言进行GSEA生信分析的代码示例: 1. 首先,需要安装和加载必要的R包,例如GSEA包和其他必要的依赖包。 ```R install.packages("GSEA") library(GSEA) ``` 2. 加载基因表达数据集,通常是一个包含基因表达矩阵的数据文件。假设文件名为"expression_data.txt",其中包含基因表达矩阵和对应的样本信息。 ```R expression_matrix <- read.table("expression_data.txt", header = TRUE) ``` 3. 定义基因集,可以是预定义的基因集数据库(例如MSigDB)中的基因集,也可以是自定义的基因集。 ```R gene_sets <- c("GO_Biological_Process", "KEGG_Pathways", "Custom_Gene_Set") ``` 4. 进行GSEA分析,使用`gsea()`函数。其中,`gene_expr_matrix`参数为基因表达矩阵,`gene_sets`参数为基因集,`class_vector`参数为样本类别信息向量。 ```R gsea_results <- gsea(gene_expr_matrix = expression_matrix, gene_sets = gene_sets, class_vector = sample_classes) ``` 5. 分析结果包括富集分数(Enrichment Score)、正负富集基因集和富集谱等。可以通过可视化方法进一步探索和解释这些结果。 ```R enrichment_score <- gsea_results$es positive_sets <- gsea_results$pos_sets negative_sets <- gsea_results$neg_sets gene_set_plot <- plot(gsea_results) ``` 以上是使用R语言进行GSEA生信分析的基本代码示例。根据具体的研究问题和分析目标,还可以进行更多的数据预处理和可视化分析。 ### 回答2: GSEA(Gene Set Enrichment Analysis)是一种生物信息学分析工具,可用于确定基因集在给定基因表达数据中的富集程度。下面是R语言中实现GSEA分析的示例代码。 首先,需要安装并加载GSEABase、clusterProfiler和enrichplot等相关的R包。 ```R install.packages("GSEABase") install.packages("clusterProfiler") install.packages("enrichplot") library(GSEABase) library(clusterProfiler) library(enrichplot) ``` 接下来,准备基因表达数据和基因集数据。假设基因表达数据保存在一个矩阵中,行表示基因,列表示样本;基因集数据保存在GMT格式文件中,每行包含一个基因集的名称、描述和基因列表。 ```R expression_data <- read.table("expression_data.txt", header = TRUE, row.names = 1) gmt_file <- system.file("extdata", "c2.cp.kegg.v7.4.symbols.gmt", package = "DOSE") gene_sets <- readGMT(gmt_file) ``` 然后,进行GSEA分析。可以选择使用差异表达基因列表作为输入,或者将基因表达数据与基因集数据一起传递。以下是基于基因表达数据进行GSEA分析的示例。 ```R gene_rank <- computeGeneRank(expression_data, method = "t.test") result <- enrichGSEA(gene_sets, gene_rank) ``` 最后,可以使用enrichplot包中的函数绘制GSEA结果的可视化,例如绘制富集和基因集热。 ```R dotplot(result, showCategory = 20) gene_heatmap(result, top = 10) ``` 通过这些代码,我们可以使用R语言实现GSEA生信分析,从而确定基因集在给定基因表达数据中的富集程度,并可视化展示分析结果。 ### 回答3: GSEA (基因集富集分析) 是一种用于分析生物学实验数据的生物信息学工具,它可以确定在给定条件下,特定基因集中的基因与实验结果相关性的显著性。下面是一个用R语言进行GSEA生信分析的代码示例: 1. 导入所需的R包。 ```R library(clusterProfiler) ``` 2. 导入基因表达数据。 ```R expression_data <- read.table("expression_data.txt", header = TRUE, sep = "\t") ``` 3. 根据实验分组信息创建一个分组向量。 ```R group <- c(rep("Group A", 3), rep("Group B", 3)) ``` 4. 根据基因的符号名称创建一个基因符号向量。 ```R gene_symbols <- c("Gene1", "Gene2", "Gene3", "Gene4", "Gene5", "Gene6") ``` 5. 创建一个基因集对象。 ```R gene_set <- list( GroupA_genes = c("Gene1", "Gene2", "Gene3"), GroupB_genes = c("Gene4", "Gene5", "Gene6") ) ``` 6. 运行GSEA分析。 ```R gsea_result <- gseGO(expression_data, geneSet = gene_set, nPerm = 1000, minGSSize = 3, maxGSSize = 500, pvalueCutoff = 0.05) ``` 7. 查看GSEA结果。 ```R print(gsea_result) ``` 这段代码中,首先导入了clusterProfiler包,它包含了进行GSEA分析所需的函数。然后,基因表达数据被读入到一个名为expression_data的数据框中。接下来创建了一个分组向量,它指定了每个样品所属的实验组。然后,基因符号向量被创建,其中包含了基因的符号名称。根据实验组信息和基因符号,一个基因集对象被创建。最后,调用gseGO函数运行GSEA分析,其中包括参数,如基因集、置换次数、最小/最大基因集大小和显著性阈值。最后,打印GSEA分析的结果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值