前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >KEGG数据库的rest API(附带R语言小技巧)

KEGG数据库的rest API(附带R语言小技巧)

作者头像
生信技能树
发布2018-03-29 16:27:59
1.9K0
发布2018-03-29 16:27:59
举报

发现感兴趣的KEGG ID居然不在KEGG.db包里面,比如:

hsa05034 Alcoholism hsa05030 Cocaine addiction

导致下面的代码失效:

library(KEGG.db)
ls("package:KEGG.db")
cellcycle_genes=KEGGPATHID2EXTID[['hsa04110']]
cytokine_genes=KEGGPATHID2EXTID[['hsa04060']]
KEGGPATHID2EXTID[['hsa05034']]
KEGGPATHID2EXTID[['hsa05030']]

其实,即使不失效,也不能使用这种方法来找属于某个pathway的基因集合了,因为这个R包以及很多年没有更新了。

搜索了一下,发现KEGG数据库的rest API,比如

http://rest.kegg.jp/get/hsa05034 (点击阅读原文可以直达)

本来准备读入到R里面,然后自己解析,发现其实已经有了R包:

library(KEGGREST)
listDatabases()

## ----get_organisms------------------------------------------------------------
org <- keggList("organism")
head(org)
keggGet('hsa05034')
gs <- keggGet('hsa05034') 
gs[[1]]$GENE
genes <- unlist(lapply(gs[[1]]$GENE,function(x) strsplit(x,';')[[1]][1]))
genes[1:length(genes)%%2 ==0]

当然了,这个R包的功能不止如此:https://bioconductor.org/packages/release/bioc/html/KEGGREST.html 我就不多演示了,感兴趣的朋友去探索一下。

补充阅读:

pathway gif动画版 可视化 :https://github.com/ajmazurie/kegg-animate-pathway

另外:附赠一个基因ID转换R语言完成方式:

ensembl2symbol <- function(genes){
  library(org.Hs.eg.db)
  eg2symbol=toTable(org.Hs.egSYMBOL)
  eg2ensembl=toTable(org.Hs.egENSEMBL)
  #genes=sample(eg2ensembl$ensembl_id,100)
  tmp=merge(eg2symbol,eg2ensembl,by='gene_id')
  return(tmp[tmp$ensembl_id %in% genes,])
}
genes=sample(eg2ensembl$ensembl_id,100)
ensembl2symbol(genes)
genes=sample(eg2ensembl$ensembl_id,100)
ensembl2symbol(genes)
genes=sample(eg2ensembl$ensembl_id,100)
ensembl2symbol(genes)

就当是我当年参加生信技能树直播编程活动提交的作业吧!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-03-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信技能树 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 补充阅读:
  • 另外:附赠一个基因ID转换R语言完成方式:
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档