文章转载于
相似的基因在不同物种中,其功能往往保守的。显然,需要一个统一的术语用于描述这些跨物种的同源基因及其基因产物的功能,否则,不同的实验室对相同的基因的功能的描述不同,将极大限制学术的交流。而 Gene Ontology (GO) 项目正是为了能够使对各种数据库中基因获基因产物功能描述相一致的努力结果。
所谓的 GO,是生物学功能注释的一个标准词汇表术语(GO term),将基因的功能分为三部分:
-
基因执行的分子功能(Molecular Function)
-
基因所处的细胞组分(Cellular Component)
-
基因以及参与的生物学过程(Biological Process)
不同的 GO term 通过有向无环图关联起来,如下图所示:
可以看出,不同的 GO term 间的关系由三类:is_a
、part_of
和 regulates
。
如 regulation of cell projection assembly
是一种生物学过程,是 regulation of cell projection organization
中的一类(is_a
),还调节(regulates
)cell projection assembly
;又如 cellular component assembly
是 celluar component biogenesis
的一部分(part_of
)。值得注意的是,这些关系都是有方向的,即反过来不成立,因而叫做有向无环图。
目前,GO 注释主要有两种方法:
-
(1)序列相似性比对(BLAST)
-
(2)结构域相似性比对(InterProScan)
这里以序列相似性比对为例,简单介绍 GO 注释的步骤:
将基因序列与 swiss-prot 蛋白质数据库进行 BLAST (blastp 或者 blastx,这篇文章介绍了如何做 BLAST 分析:BLAST 知多少?)比对,得到如下结果:
c49_g1_i1 RNF13_MOUSE 52.00 50 23 1 17 166 240 288 2e-11 65.5
c72_g1_i1 RS25_NEUCR 78.72 94 20 0 375 94 1 94 1e-32 116
c75_g1_i1 POLX_TOBAC 45.28 53 29 0 162 4 457 509 1e-08 55.1
c86_g2_i1 POLX_TOBAC 46.43 112 60 0 339 4 879 990 2e-30 120
c91_g1_i1 BUB1_ARATH 55.71 70 28 2 61 264 289 357 1e-14 73.6
c143_g1_i1 STL1_YEAST 31.98 172 85 4 6 518 407 547 6e-17 82.8
c150_g1_i1 CST26_YEAST 37.63 93 38 3 223 5 142 234 6e-10 58.2
c150_g2_i1 YHOE_SCHPO 42.67 75 41 1 227 3 54 126 5e-16 74.7
c156_g2_i1 EXOL2_ARATH 47.17 53 28 0 299 141 229 281 6e-06 47.0
c169_g1_i1 SPT5_ASPFU 60.98 82 31 1 20 262 725 806 2e-18 84.0
其中,第二列 swiss-prot 蛋白质数据库序列的 ID(UniProtKB ID)。
从 ftp://ftp.pir.georgetown.edu/databases/idmapping 下载 idmapping.tb.gz
,该文件共有 22 列(tab 键分割):
Q6GZX4 001R_FRG3G 2947773 YP_031579.1 81941549; 49237298 PF04947 GO:0006355; GO:0046782; GO:0006351 UniRef100_Q6GZX4 UniRef90_Q6GZX4 UniRef50_Q6GZX4 UPI00003B0FD4 654924 15165820 AY548484 AAT09660.1
每一列的含义分别为 (可以看出,许多数据库已经和GO关联了):
1. UniProtKB accession
2. UniProtKB ID
3. EntrezGene
4. RefSeq
5. NCBI GI number
6. PDB
7. Pfam
8. GO
9. PIRSF
10. IPI
11. UniRef100
12. UniRef90
13. UniRef50
14. UniParc
15. PIR-PSD accession
16. NCBI taxonomy
17. MIM
18. UniGene
19. Ensembl
20. PubMed ID
21. EMBL/GenBank/DDBJ
22. EMBL protein_id
根据文件 idmapping.tb.gz
,将 blast 的结果,通过 UniProtKB ID
,将第八列的 GO 号注释到对应的基因上
python UniProt2GO_annotate.py idmapping.tb.gz blastout outputfile
结果如下:
c93619_g2_i1 GO:0005506,GO:0016705,GO:0016021,GO:0004497,GO:0020037
c93619_g2_i3 GO:0009733,GO:0020037,GO:0044550,GO:0016021,GO:0016020,GO:0016711,GO:0009813,GO:0005789,GO:0005506
c70056_g1_i1 GO:0005737,GO:0019722,GO:0071889,GO:0005829,GO:0001077,GO:0006357,GO:0097720,GO:0000978,GO:0046872,GO:0005634,GO:0006874
c93748_g1_i1 GO:0006729,GO:0008124
c107639_g1_i1 GO:0009737,GO:0009738,GO:0005623,GO:0006970,GO:0009651,GO:0045454,GO:0009789
c106424_g1_i1 GO:0043565,GO:0009555,GO:0003700,GO:0005634,GO:0009793,GO:0006351
c66585_g1_i1 GO:0005737,GO:0003746,GO:0003924,GO:0005525
c110618_g1_i8 GO:0015297,GO:0016021,GO:0015238
c105249_g1_i5 GO:0046872,GO:0043161,GO:0005829,GO:0006915,GO:0032648,GO:0050691,GO:0005654,GO:0070936,GO:0061630,GO:0005634
c134727_g1_i1 GO:0072546,GO:0030246,GO:0005783
拓展阅读:
-
Ontology Relations:http://geneontology.org/page/ontology-relations#basics
-
Frequently Asked Questions (FAQ):http://geneontology.org/faq-page
脚本 UniProt2GO_annotate.py 下载:
链接:http://pan.baidu.com/s/1kVjzJYv 密码:vigu