Disease ontology (DO) annotates human genes in the context of disease. DO is important annotation in translating molecular findings from high-throughput data to clinical relevance. DOSE is an R package providing semantic similarity computations among DO terms and genes which allows biologists to explore the similarities of diseases and of gene functions in disease perspective. Enrichment analyses including hypergeometric model and gene set enrichment analysis are also implemented to support discovering disease associations of high-throughput biological data. This allows biologists to verify disease relevance in a biological experiment and identify unexpected disease associations. Comparison among gene clusters is also supported.

第6篇,引用过百的文章,本来这也是一篇ESI高被引文章,但后续增长不行,未能保持ESI高被引。我对这个包的名字还是很满意的,因为刚好是一个单词,然而这却是不好的,因为做为一个单词,别人要谷歌这个包名的时候,很难搜索到。与此类似的一个包meshes, 《文章发表:Using meshes for MeSH term enrichment and semantic analyses》,我在取名字上还是掉入了同样的坑。

这个包说起来写了很久了,与clusterProfiler是同一时期,当然稍比clusterProfiler晚一点,一直没有发文章是有原因的,那就是Disease Ontology这个本体在发表之后,一直没有更新,一个没有更新的数据意义就不大,所以我还懒得写。

最后让我开始有想要写这篇文章的原因是2012年的NAR发表了DO的更新,而2013年NAR又发表了DO-gene映射的更新。DOSE这个包的语义度量来自于GOSemSim,《GOSemSim:GO语义相似性度量》,而富集分析是在这个包实现的,所以包括clusterProfiler都是调用DOSE,而且我在里面实现了比较多的可视化函数,不过现在是切分出来,并且重新实现了enrichplot包,《enrichplot: 让你们对clusterProfiler系列包无法自拔》。

虽然DO这个数据一直缺少维护,但我对DOSE包一直是没有放弃的,因为我觉得找疾病相关的线索是很重要的,所以后面我又整合了Network of Cancer Gene和DisGeNET两个数据。后面可能我还会整合其它一些和疾病有关的数据!

一点八卦

或者你还能记起来另一个可以做DO语义相似性的包,DOSim,这个包很有意思,在文章发表之后,主动去CRAN上要求下架,然后它的主页也随之变成了404。如果你能记我写的《[连载3]:辣眼睛,一篇抄袭引发的系列血案!》这一篇文章的话,原因就显而易见,因为作者深知见不得光!然而文章恒久远,一篇永流传!

DOSim那篇文章,用语义相似性计算与肥胖相关的基因,然后聚类,切出几个子类,然后再用GO,KEGG富集分析说这些子类和某些GO、KEGG通路有关,大概做了这个一个实例。我始终对聚类结果进行富集分析保持看法,因为聚类之后,等于说把非常相似的基因放在一起,那么超几何分布做富集分析的前提:随机有放回的抽样就不复存在了!算出来的p值小到简直都0还要0了。

另一则八卦

前面说了2012,2013年的时候NAR上有DO的更新,我开始觉得有时机了,可以发表DOSE包了,事实上我等到2014年5月才投的稿,这期间我干什么去了?

我在2013年拿到港大offer,而还没到港大的时候,SBS那个专家跟我说「要是我们能发文章,对明年申请基金很有帮助,这对我们很重要」,我当年就是too simple,甚至于naive,我就跟他说我有DOSEReactomePA等包没有发表,首先当然是DOSE因为和疾病有关,而后面准备做cancer。

在我到港大之前的那段时间,我就在看GSEA算法,因为我觉得富集分析光写个超几何分布是不够的,我需要写个GSEA来加码,GSEA算法就是在那段时间集中火力写出来的。

诡异的是又让我先放着,不知道是不是文章是我附送的,面子上过不去,然后就是不断地跟我说第二年年中要出文章,我并没有什么明确的想法,而他也没给到我,只是不断地施压。再后来我就在帮他给别人分析ChIPseq的时候,写了ChIPseeker包,然后就是《CS10: 八卦终结版》中的故事了,也是瞎指挥,让人无法做事,而天天在吼:「I want to see the paper」。

以至于我换了实验室之后,再也不敢谈自己做过的东西了,PhD期间自己把以前自己的一些东西发表了,也不敢让实验室的人知道,悄咪咪地发了。