互作網(wǎng)絡圖kgml文件的獲取,并生成進行互作網(wǎng)絡圖繪制的邊和節(jié)點的文件

利用kegg數(shù)據(jù)庫的pathway信息,構建基因和基因的互作網(wǎng)絡關系,并用cytoscape展示,可以方便研究者更好的探索那些基因是在生命過程中發(fā)揮重要作用的關鍵基因。

kegg pathway中的基因與基因的互作關系,可以從kegg官方提供的kgml文件中獲取。

獲取方法參考網(wǎng)址:https://www.kegg.jp/kegg/rest/keggapi.html

確定是否存在對應pathway的kgml文件:http://rest.kegg.jp/get/hsa04390/kgml

其中:hsa04390為pathway編號,可以替換為自己關注的pathway編號


腳本參考:https://blog.csdn.net/weixin_43569478/article/details/108079035


R語言批量下載關注pathway編號的kgml文件:

? library(curl)

library("XML")

library("methods")

library(KEGGgraph)


interested_pathway <- c('hsa04390','hsa04371')

for (i in interested_pathway){

url <- paste0("http://rest.kegg.jp/get/",i,"/kgml")

assign(paste0(i,"_kgml"), tempfile())

curl_download(url, paste0(i,"_kgml"))

}

##############生成進行網(wǎng)絡圖繪制的邊文件和節(jié)點文件#####################

for (i in interested_pathway){

? mapkG <- parseKGML2Graph(paste0(i,"_kgml"),expandGenes=TRUE, genesOnly = TRUE)

? mapkNodes <- nodes(mapkG)

? mapkEdges <- edges(mapkG)

? mapkEdges <- mapkEdges[sapply(mapkEdges, length) > 0]

? res <- lapply(1:length(mapkEdges), function(t){

? ? name <- names(mapkEdges)[t]

? ? len? <- length(mapkEdges[[t]])

? ? do.call(rbind, lapply(1:len, function(n){

? ? ? c(name, mapkEdges[[t]][n])

? ? }))

? })

? result <- data.frame(do.call(rbind, res))

? write.table(result,? "edges.txt", sep = "\t", row.names = F, col.names = F, quote = F ,append = T)

? write.table(mapkNodes, "nodes.txt", sep = "\t", row.names = F, col.names = F, quote = F ,append = T)

}


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

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

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