KEGGgraph怎樣根據(jù)kgml文件從pathway中重構(gòu)出基因互作網(wǎng)絡(luò)

本篇文章為大家展示了KEGGgraph怎樣根據(jù)kgml 文件從pathway中重構(gòu)出基因互作網(wǎng)絡(luò),內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過(guò)這篇文章的詳細(xì)介紹希望你能有所收獲。

目前創(chuàng)新互聯(lián)已為近1000家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)站空間、成都網(wǎng)站托管、企業(yè)網(wǎng)站設(shè)計(jì)、北海街道網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。

KEGGgraph 包可以解析kgml 文件,從中得到不同對(duì)象之間的網(wǎng)絡(luò)結(jié)構(gòu),并在此基礎(chǔ)上進(jìn)一步挖掘其中的信息。

KEGGgraph 包提供了以下3種基本功能:

將kgml 文件轉(zhuǎn)換為基因互作網(wǎng)絡(luò)

用法示例

# 讀取hsa00020xml 文件
> mapkG <- parseKGML2Graph("hsa00020.xml",expandGenes=TRUE, genesOnly = TRUE)
> mapkG
A graphNEL graph with directed edges
Number of Nodes = 30
Number of Edges = 101
>  nodes(mapkG)
[1] "hsa:1738"  "hsa:4967"  "hsa:55753" "hsa:1743"  "hsa:8801"  "hsa:8802"
[7] "hsa:8803"  "hsa:3417"  "hsa:3418"  "hsa:3419"  "hsa:3420"  "hsa:3421"
[13] "hsa:47"    "hsa:2271"  "hsa:48"    "hsa:50"    "hsa:1431"  "hsa:4190"
[19] "hsa:4191"  "hsa:5091"  "hsa:5160"  "hsa:5161"  "hsa:5162"  "hsa:1737"
[25] "hsa:5105"  "hsa:5106"  "hsa:6389"  "hsa:6390"  "hsa:6391"  "hsa:6392"
>  edges(mapkG)
$`hsa:1738`
[1] "hsa:4967"  "hsa:55753" "hsa:5160"  "hsa:5161"  "hsa:5162"  "hsa:1737"
$`hsa:4967`
[1] "hsa:3419" "hsa:3420" "hsa:3421" "hsa:3417" "hsa:3418"
$`hsa:55753`
[1] "hsa:3419" "hsa:3420" "hsa:3421" "hsa:3417" "hsa:3418"

在 parseKGML2Graph 中,有兩個(gè)參數(shù),expandGenes 和  genesOnly。

expandGenes 控制是否將基因進(jìn)行展開(kāi),在pathway 中,會(huì)有1個(gè)KO 對(duì)應(yīng)多個(gè)gene的情況,比如下面這種

    <entry id="32" name="hsa:8801 hsa:8802 hsa:8803" type="gene" reaction="rn:R00405"
        link="">http://www.kegg.jp/dbget-bin/www_bget?hsa:8801+hsa:8802+hsa:8803">;
        <graphics name="SUCLG2, G-SCS, GBETA, GTPSCS..." fgcolor="#000000" bgcolor="#BFFFBF"
             type="rectangle" x="260" y="574" width="46" height="17"/>
    </entry>

expandGenes = TRUE 表示將基因展開(kāi),每個(gè)基因作為一個(gè)節(jié)點(diǎn)。

genesOnly 參數(shù)控制是否將其他類(lèi)型的entry (比如compound等類(lèi)型)展現(xiàn)在network 中,默認(rèn)值為 TRUE,所以最終得到的network 中節(jié)點(diǎn)全部是基因。

通過(guò)parseKGML2Graph 這一步我們就可以從一張pathway 中得到基因產(chǎn)物(蛋白)的互作網(wǎng)絡(luò), 還需要注意一點(diǎn),整個(gè)網(wǎng)絡(luò)是一個(gè)有向圖, 因?yàn)榛虍a(chǎn)物之間的互作關(guān)系是由方向性的。

對(duì)network 進(jìn)行可視化

由于自帶的可視化不夠美觀,我們把nodes和edges 寫(xiě)入文件,用cytoscape 進(jìn)行可視化,用法示例

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)
write.table(mapkNodes, "nodes.txt", sep = "\t", row.names = F, col.names = F, quote = F)

導(dǎo)入cytoscape  畫(huà)出來(lái)的圖
KEGGgraph怎樣根據(jù)kgml 文件從pathway中重構(gòu)出基因互作網(wǎng)絡(luò)

查詢節(jié)點(diǎn)的degree信息

對(duì)于一個(gè)netwrok 而言,每個(gè)節(jié)點(diǎn)的degree 信息是我們最常用的信息, 示例

> mapkGoutdegrees <- sapply(edges(mapkG), length)
> mapkGindegrees <- sapply(inEdges(mapkG), length)
> degrees <- data.frame(indegrees = mapkGindegrees, outdegrees = mapkGoutdegrees)
> head(degrees)
          indegrees outdegrees
hsa:1738          1          6
hsa:4967          2          5
hsa:55753         2          5
hsa:1743          3          3
hsa:8801          4          1
hsa:8802          4          1

由于是有向圖,所以有入度 indegrees 和 出度  outdegrees 的概念。

除了以上基礎(chǔ)功能外,還可以借助其他的R包進(jìn)一步挖掘信息,比如在整個(gè)基因互作網(wǎng)絡(luò), 哪個(gè)基因是最關(guān)鍵的。

示例:

> library(RBGL)
> mapkG <- parseKGML2Graph("hsa00020.xml",expandGenes=TRUE, genesOnly = TRUE)
>  bcc <- brandes.betweenness.centrality(mapkG)
> rbccs <- bcc$relative.betweenness.centrality.vertices[1L,]
> toprbccs <- sort(rbccs,decreasing=TRUE)[1:4]
> toprbccs
  hsa:1743   hsa:2271   hsa:1738     hsa:47
0.21597893 0.16177167 0.14965648 0.09880362

對(duì)于network 而言,我們一般認(rèn)為degree 越大的點(diǎn)在這個(gè)網(wǎng)絡(luò)中越重要,所以需要看節(jié)點(diǎn)的degree 信息。除了這種基本的認(rèn)識(shí)外,還有很多成熟的算法,從network 中挖掘關(guān)鍵節(jié)點(diǎn)。 RBGL 包提供了Brandes 的算法,用來(lái)衡量節(jié)點(diǎn)在網(wǎng)絡(luò)中的重要性,上面的結(jié)果中,toprbccs 就是我們篩選出的4個(gè)比較重要的節(jié)點(diǎn)。

  1. 使用KEGGgraph包,我們可以方便的從pathway中得到基因戶做網(wǎng)絡(luò);

  2. 可以將network 中的nodes和edges 信息導(dǎo)出,使用cytoscape 可視化;

  3. 可以借助其他成熟的算法挖掘基因互作網(wǎng)絡(luò)中的關(guān)鍵基因;

上述內(nèi)容就是KEGGgraph怎樣根據(jù)kgml 文件從pathway中重構(gòu)出基因互作網(wǎng)絡(luò),你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

網(wǎng)站名稱(chēng):KEGGgraph怎樣根據(jù)kgml文件從pathway中重構(gòu)出基因互作網(wǎng)絡(luò)
文章路徑:http://bm7419.com/article12/jdepdc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站制作營(yíng)銷(xiāo)型網(wǎng)站建設(shè)、定制開(kāi)發(fā)、響應(yīng)式網(wǎng)站、做網(wǎng)站、網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

搜索引擎優(yōu)化