在GSEA分析中,在MSigDB(Molecular Signatures Database)数据库中定义了很多基因集,下载的基因集是gmt格式文件。下载的gmt格式文件,打开后可以看见是下面这个样子的:
gmt(Gene Matrix Transposed,基因矩阵转置)是多列注释文件,列与列之间都是Tab制表符分割。
第1列:是基因所属基因集的名字,可以是通路名字,也可以是自己定义的任何名字。
第2列 :一般是描述信息,说明这套基因列表从哪里收集的,也可以为空或者用NA表示。官方提供的格式是URL,也可以是任意字符串。
第3列-第n列:是基因集内所有基因的名字,有几个写几列。
每一行的列数可以不一样,主要是基因集内的基因数量不一样。
gmt文件可用 read.gmt()函数读入,读入的数据是一个数据框。
如何制作自定义的gmt文件?下面是来自生信技能树的案例代码:
gcSample数据是来自clusterProfiler包,只是用来练习,自己自定义的可能并不是这样的list,可以处理成类似gcSample数据的list,用上面代码写出gmt文件。
下面是我处理的一个基因集
MoleculeName和 catabolism.Type这2列是我们要的。
可以自己构建类似上面gcSample的list,然后自己写一个函数输入就行。
我自己定义了一个输入对象gmtInfo
定义用来处理gmtInfo对象的函数:
领取专属 10元无门槛券
私享最新 技术干货