1.安装
library("devtools")
install_github("GSEA-MSigDB/GSEA_R")
2.查看说明文档
??GSEA::GSEA
3.举例
两个主要的输入文件格式:input.ds and input.cls
RNAseq数据 input.ds
GSEA(input.ds = system.file('extdata', 'Leukemia_hgu95av2.gct', package = 'GSEA', mustWork = TRUE),
input.cls = system.file('extdata', 'Leukemia.cls', package = 'GSEA', mustWork = TRUE), #输入文件
input.chip = system.file('extdata', 'Human_AFFY_HG_U95_MSigDB_7_0_final.chip',package = 'GSEA',mustWork = TRUE), #RNAseq无需此参数
gs.db = system.file('extdata', 'h.all.v7.0.symbols.gmt', package = 'GSEA', mustWork = TRUE),
output.directory = getwd(), #输出文件夹
doc.string='gsea_result', # 输出前缀
collapse.dataset = TRUE, # 与input.chip联用
collapse.mode = 'max', # 与input.chip联用
reshuffling.type = "sample.labels", # 生物学重复<7, gene.labels?
nom.p.val.threshold=-1,
fdr.q.val.threshold=0.05,
use.fast.enrichment.routine=T, #use EnrichmentScore2 to compute random perm. enrich.
#gs.size.threshold.min=15,
#gs.size.threshold.max=500)
4.部分结果
补充:
1.如何读取gmt文件进行操作?
2. 如果要有选择性的进行GSEA分析,如何制作特定的gmt文件?
根据rawdata算出来FPKM,然后进行 单个基因与其他基因 之间相关性的计算
转置后文件内容为:纵坐标是样本名称,横坐标是不同基因的 Ensembl
这样就算好了基因间的相关性系数
接下来做GSEA分析
关于GSEA富集分析,其实很早就接触过了,但一直没有深究下去。这里白介素同学抽空进行了测试。
关于原理的理解,我考虑自身情况只在用,就不去深究数学公式如何,只需要大概知道其原理,与 常用的DAVID做分析 有何区别即可。
常规的富集分析多是在差异分析之后得到差异基因集,然后进入富集分析,但值得注意的是,差异基因的获取必须是认为的设定了阈值的,我们通俗的讲, 假设一个基因的差异倍数是1.2, 你觉得是不是差异基因? 如果设置阈值为2,它就不是,你设置阈值为1.1它就是了,因此就存在人为的主观影响。 从生物学的角度来讲,1.2倍的差异也可能是差异,因为有时某些基因表达的微量变化也能引发重要的生物学功能变化 。
关于软件的点击操作其实都不会难,难点在于要理解清楚,输入的数据格式,需要哪些数据,格式是什么?
关于操作,其实网络上已有很多教程,这里可以留下链接,就不去重复闭门造车了。
输入文件准备教程及结果解读
结果解读教程2
白介素同学当然是完整测试过一遍了,给大家看看结果,就是一个文件夹里面包含所有结果。大概过了几分钟就跑完了,关键还是格式准备。
关键图形结果展示,简单解释一下,黑色线是基因,峰表示富集分数。正的为高表达,负的为低表达。
仍然发现有一个问题,就是图片太丑了,恐怕放到文章里不是很合适。
这样,还得想办法用R语言解决一下,下次看如果解决了分享出来。