下載GO/KEGG某一pathway的genelist

參考網(wǎng)站
R獲取指定GO term和KEGG pathway的gene list基因集
使用R進行Gene Ontology(GO)富集分析過程中如何導出某一特定GO詞條下所有的基因

笨方法可以去KEGG官網(wǎng)復制然后分列提取

library("KEGGREST")
names <- keggGet("hsa05215")[[1]]$GENE
namesodd <-  names[seq(0,length(names),2)]
namestrue <- gsub("\\;.*","",namesodd)
write.csv(namestrue, file = "hsa05215",quote = F, row.names = F)
names <- keggGet("hsa04932")[[1]]$GENE
namesodd <-  names[seq(0,length(names),2)]
namestrue <- gsub("\\;.*","",namesodd)
write.csv(namestrue, file = "hsa04932_Non-alcoholic fatty liver disease (NAFLD)",quote = F, row.names = F)

GO Term例子
本例子df輸入數(shù)據(jù)結(jié)構(gòu)為


df數(shù)據(jù)結(jié)構(gòu)
rm(list=ls())
suppressMessages(library(tidyverse))
library(org.Hs.eg.db)
suppressMessages(library(plyr)) #用來合并不等長數(shù)據(jù)(rbind.fill)

get_GO_Gene_list<-function(rt){
  gene_list<-data.frame()
  for (i in 1:nrow(rt)){
    go_id<-as.character(rt[i,2])
id <- data.frame(mget(go_id, org.Hs.egGO2ALLEGS)[[1]])
genes<-select(org.Hs.eg.db, keys=as.character(id[,1]), columns=c("SYMBOL","ENTREZID"), keytype="ENTREZID")
symbols<-as.character(genes$SYMBOL)
symbols<-symbols[!duplicated(symbols)]
genes_df<-t(as.data.frame(symbols))
gene_list<-rbind.fill(gene_list,as.data.frame(genes_df))
  }
  gene_list<-t(gene_list)
  colnames(gene_list)<-as.character(rt[,1])
  gene_list[is.na(gene_list)] <- ""
  return(gene_list)
}

df_gene_list<-get_GO_Gene_list(df)
最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容