KEGG是一个数据库资源理解生物系统的高级功能和实用程序,如细胞、生物和生态系统,从分子水平上的信息,特别是大规模基因组测序所产生的分子数据集和其他高通量实验技术。
KEGGREST
允许访问KEGG REST API。自从KEGG禁用KEGG SOAP服务器12月31日2012(这意味着KEGGSOAP
包将不再工作),KEGGREST
作为替换。
的接口KEGGREST
更简单,在某些方面更强大的比KEGGSOAP
;然而,并不是所有的功能可以通过SOAP API已经暴露REST API。如果更多的功能暴露在服务器端,这个包将被更新来利用它。
KEGG REST API是基于一些简单的操作:信息
,列表
,找到
,得到
,conv
,链接
。相应的R
函数KEGGREST
是:keggInfo ()
,keggList ()
,keggFind ()
,keggGet ()
,keggConv
,keggLink ()
。
keggList ()
KEGG公开的数据库。了解什么是可用的,运行listDatabases ()
:
库(KEGGREST) listDatabases ()
# #[1]“途径”“闪亮”“模块”“ko”“基因组”“vg”# # [7]“ag)”“化合物”“多糖”“反应”“rclass”“酶”# #[13]“疾病”的“毒品”“dgroup”“环境”“基因”“配体”# # [19]“kegg”
您可以使用这些数据库进一步查询。注意,在许多情况下,您还可以使用一个三个字母的代码或KEGG生物“T”(基因组标识符)在同一个地方你会使用其中一个数据库名称。
您可以获得在KEGG生物可用的列表keggList ()
功能:
org < - keggList(“生物”)头(组织)
# # T。生物物种数量# # [1]“T01001”“保险公司”“智人(人类)”## [2,] "T01005" "ptr" "Pan troglodytes (chimpanzee)" ## [3,] "T02283" "pps" "Pan paniscus (bonobo)" ## [4,] "T02442" "ggo" "Gorilla gorilla gorilla (western lowland gorilla)" ## [5,] "T01416" "pon" "Pongo abelii (Sumatran orangutan)" ## [6,] "T03265" "nle" "Nomascus leucogenys (northern white-cheeked gibbon)" ## phylogeny ## [1,] "Eukaryotes;Animals;Vertebrates;Mammals" ## [2,] "Eukaryotes;Animals;Vertebrates;Mammals" ## [3,] "Eukaryotes;Animals;Vertebrates;Mammals" ## [4,] "Eukaryotes;Animals;Vertebrates;Mammals" ## [5,] "Eukaryotes;Animals;Vertebrates;Mammals" ## [6,] "Eukaryotes;Animals;Vertebrates;Mammals"
从KEGGREST
的角度看,你刚才问KEGG给你们中的每一个条目的名称“有机体”数据库。
因此,实体的完整列表可以查询KEGGREST
可以得到如下:
可查询< - c (listDatabases(),组织[1],组织[2])
你也可以要求中的每个条目“保险公司”(智人)数据库如下:
keggList (hsa)
keggGet ()
一旦你有了一个特定KEGG标识符的列表,使用keggGet ()
获得更多关于他们的信息。这里我们查找一个人类基因和一个大肠杆菌O157基因:
查询< - keggGet (c (“hsa: 10458”,“ece: Z5100”))
正如所料,这将返回两个项目:
长度(查询)
# # 2 [1]
在幕后,KEGGREST
下载并解析KEGG平面文件现在,您可以探索:
查询名称([[1]])
# #[1]“条目”“名称”“定义”“ORTHOLOGY”“有机体”# #[6]“途径”“闪亮”“位置”“主题”“DBLINKS”# #[11]“结构”“AASEQ”“NTSEQ”
查询美元[[1]]条目
cd # # # #“10458”
查询DBLINKS美元[[1]]
# # [1]“NCBI-GeneID: 10458 # #“NCBI-ProteinID: NP_059345”[3]“人类:605475”“HGNC: 947 # #”[5]“运用:ENSG00000175866”“维加:OTTHUMG00000177698”# #[7]“灯塔:Q9UQB8 (Tbio)”"UniProt: Q9UQB8"
keggGet ()
也可以返回氨基酸序列AAStringSet
对象(从Biostrings
包):
keggGet (c (“hsa: 10458”,“ece: Z5100”),“aaseq”) # #检索氨基酸序列
# # 2 # #长度宽度seq的AAStringSet实例名称# # [1]552 MSLSRSEEMHRLTENVYKTIMEQ…DLSAQGPEGREHGDGSARTLAGR hsa: 10458 K05627……# # [2]248 MLNGISNAASTLGRQLVGIASRV…SGLPPLAQALKDHLAAYEQSKKG ece: Z5100 K12786……
…或DNAStringSet
如果对象选项
是ntseq
:
keggGet (c (“hsa: 10458”,“ece: Z5100”),“ntseq”) # #检索核苷酸序列
# # 2 # #长度宽度seq的DNAStringSet实例名称# # [1]1659 ATGTCTCTGTCTCGCTCAGAGGA…CCCGCACCCTGGCTGGAAGATGA hsa: 10458 K05627……# # [2]747 ATGCTTAATGGAATTAGTAACGC…ATGAGCAATCGAAGAAAGGGTAA ece: Z5100 K12786……
keggGet ()
也可以返回图片:
png < - keggGet (“hsa05130”、“图像”)t < - tempfile()库(png) writePNG (png, t)如果(互动())browseURL (t)
请注意:keggGet ()
可以一次10只返回结果集,(这限制是在服务器端)。如果你提供超过10个输入keggGet ()
,KEGGREST
只会警告说,将返回第一个10个结果。
keggFind ()
您可以搜索两个独立的关键词(“志贺”和“毒素”在这种情况下):
头(keggFind(“基因”,c(“志贺”、“毒素”)))
# # ece: Z1464 # #“stx2A;类志贺毒素二世亚基由噬菌体编码bp - 933 w“# # ece: Z1465 # #”stx2B;II类志贺毒素B亚基由噬菌体编码bp - 933 w“# # ece: Z3343 # #”stx1B;第1类志贺毒素B亚基编码在前噬菌体cp - 933 v“# # ece: Z3344 # #”stx1A;类志贺毒素1亚基编码在前噬菌体cp - 933 v“# # ecs: ECs1205 # #”志贺毒素2亚基“# # ecs: ECs1206 # #”志贺毒素2 B亚基”
这两个词在一起或搜索:
头(keggFind(“基因”,“志贺毒素”))
# # ece: Z1464 # #“stx2A;类志贺毒素二世亚基由噬菌体编码bp - 933 w“# # ece: Z1465 # #”stx2B;II类志贺毒素B亚基由噬菌体编码bp - 933 w“# # ece: Z3343 # #”stx1B;第1类志贺毒素B亚基编码在前噬菌体cp - 933 v“# # ece: Z3344 # #”stx1A;类志贺毒素1亚基编码在前噬菌体cp - 933 v“# # ecs: ECs1205 # #”志贺毒素2亚基“# # ecs: ECs1206 # #”志贺毒素2 B亚基”
寻找一个化学公式:
头(keggFind(“复合”,“C7H10O5”,“公式”))
# # cpd: C00493 cpd: C04236 cpd: C16588 cpd: C17696 cpd: C18307 cpd: C18312 # #“C7H10O5”“C7H10O5”“C7H10O5”“C7H10O5”“C7H10O5”“C7H10O5”
寻找一个化学公式包含“O5”和“C7”:
头(keggFind(“复合”,“O5C7”,“公式”))
# # cpd: C00493 cpd: C00624 cpd: C01215 cpd: C01424 cpd: C02123 cpd: C02236 # #“C7H10O5”“C7H11NO5”“C7H9NO5”“C7H6O5”“C7H12O5”“C7H6O5S”
你可以搜索化合物与特定的质量:
keggFind(“复合”,174.05,“exact_mass”)
# # cpd: C00493 cpd: C04236 cpd: C16588 cpd: C17696 cpd: C18307 cpd: C18312 # #“174.052823”“174.052823”“174.052823”“174.052823”“174.052823”“174.052823”# # cpd: C21281 # #“174.052823”
因为我们提供的含有两个小数点的数字位数精度,KEGG会发现所有化合物的质量在174.045和174.055之间。
整数范围可以用来发现化合物分子量:
头(keggFind(300:310“复合”,“mol_weight”))
# # cpd: C00051 cpd: C00200 cpd: C00219 cpd: C00239 cpd: C00270 cpd: C00357 # #“307.32348”“306.33696”“304.46688”“307.197122”“309.26986”“301.187702”
keggConv ()
KEGG标识符之间的转换和外部标识符。
你可以指定完全限定标识符:
keggConv (ncbi-proteinid c (“hsa: 10458”,“ece: Z5100”))
# # hsa: 10458 ece: Z5100 # #“ncbi-proteinid: NP_059345”“ncbi-proteinid: AAG58814”
…或得到整个物种的映射:
头(keggConv(“生态”、“ncbi-geneid”))
# # ncbi-geneid: 944742 ncbi-geneid: 945803 ncbi-geneid: 947498 ncbi-geneid: 945198 # #“生态:b0001”“生态:b0002”“生态:b0003”“生态:b0004”# # ncbi-geneid: 944747 ncbi-geneid: 944749 # #“生态:b0005”“生态:b0006”
扭转的论点相反的映射:
头(keggConv (“ncbi-geneid”、“生态”))
# #生态:b0001生态:b0002生态:b0003 # #“ncbi-geneid: 944742”“ncbi-geneid: 945803”“ncbi-geneid: 947498”# #生态:b0004生态:b0005生态:b0006 # #“ncbi-geneid: 945198”“ncbi-geneid: 944747”“ncbi-geneid: 944749”
keggLink ()
大部分的KEGGSOAP
函数的名字从“获得”开始,为例get.pathways.by.genes ()
,可以更换keggLink ()
函数。这里我们查询所有人类的途径:
头(keggLink(“通路”,“保险公司”))
# # hsa: 10327 hsa: 124 hsa: 125 hsa: 126 hsa: 127 # #“路径:hsa00010”“路径:hsa00010”“路径:hsa00010”“路径:hsa00010”“路径:hsa00010”# # hsa: 128 # #“路径:hsa00010”
…但是你也可以指定一个或多个基因(来自多个物种):
keggLink(“通路”,c (“hsa: 10458”,“ece: Z5100”))
# # hsa: 10458 hsa: 10458 hsa: 10458 hsa: 10458 ece: Z5100 # #“路径:hsa04520”“路径:hsa04810”“路径:hsa05130”“路径:hsa05135”“路径:ece05130”