WGCNA

加權基因共表達網(wǎng)絡資料集錦:

1.https://mp.weixin.qq.com/s/LvlBt_gCLEyxrpGkKkkIZA

寫在前面:大家黏貼復制代碼的時候一定注意格式灿渴,有可能一個小短線或者逗號赠叼、點之類的格式不對就有可能報錯逊抡,實在眼看不出來就自己手打一遍搁嗓,這是小白的我最近跑數(shù)據(jù)入的最多的坑履肃,大家要注意。

來源: 生信修煉手冊 昼窗,我看的第一篇WGCNA的推文对人,寫的很詳細,很贊凛俱,但是代碼對于初學者來說還得再細細體會紊馏,于是有了后面我推薦的各種推文。文末附最冰。

WGCNA是目前非呈萜澹火熱的一項研究內容,其全稱為weighted ?correlation network analysis, 直譯就是加權基因相關性網(wǎng)絡分析暖哨。通過這項分析赌朋,可以鑒定共表達的基因集合,這樣的集合稱之為modules, 而且可以將modules與表型數(shù)據(jù)進行關聯(lián)分析篇裁,挖掘潛在的mark 基因沛慢。

這個高大上的分析內容的第一步就是構建基因之間的共表達網(wǎng)絡,共表達是常用的分析相關性的一種策略达布,直接通過線性相關函數(shù)來計算相關性团甲,比如pearson, spearman等相關系數(shù)黍聂,每兩個基因之間可以計算出一個相關系數(shù)躺苦,那么如何構建出相關性網(wǎng)絡呢?

在基因的相關性網(wǎng)絡中产还,每個節(jié)點代表一個基因匹厘,節(jié)點之間的連線用來表示兩個基因的相關性。在傳統(tǒng)的相關性分析中脐区,通常會給定一個閾值愈诚,比如相關系數(shù)的絕對值必須大于0.9,才認為這兩個基因間存在相關性牛隅。對應的公式如下

S表示兩個基因間的相關系數(shù)的絕對值炕柔,公式如下

注意是絕對值,因為協(xié)同變化的基因可以是正相關媒佣,也可以是負相關匕累。給定一個閾值,如果兩個基因之間的相關系數(shù)大于該閾值默伍,則認為這兩個基因存在相關性欢嘿,在網(wǎng)絡圖中就用一條線將這兩個基因連接起來授霸;如果小于該閾值右锨,則不存在相關性寨腔。

通過閾值篩選,將兩個基因間的相關系數(shù)轉換為0和1,0代表沒有相關性孕豹,1代表有相關性框弛,所有基因之間的關系可以用以下矩陣來表示

geneA geneB geneC

geneA 0 1 1

geneB 1 0 1

geneC 1 0 0

這樣的矩陣稱之為鄰接矩陣辛辨,通過這個矩陣可以直觀的表示一個網(wǎng)絡,數(shù)值為1的點對應的兩個基因在網(wǎng)絡圖中有連線瑟枫。

用上述方法構建出的網(wǎng)絡斗搞,稱之為非加權的共表達網(wǎng)絡,對于兩個基因而言慷妙,其相關性是有強弱的僻焚,是一個在0到1 分為內波動的值,采用上述一刀切的方法膝擂,缺失了原本的變化趨勢虑啤,所以非加權的共表達網(wǎng)絡丟失了很多信息。

WGCNA的開發(fā)團隊提出了加權基因共表達網(wǎng)絡的概念架馋,怎么加權呢狞山,公式如下

在計算鄰接矩陣中兩個基因的值時,將原本的相關系數(shù)的絕對值做一個乘方運算叉寂。乘方運算強化了相關系數(shù)的變化層次萍启,比如原本系數(shù)相差,乘方運算后其差距會被拉大屏鳍,這樣使得數(shù)據(jù)可以區(qū)分的更開勘纯,有利于后續(xù)聚類識別modules, 同時乘方運算也保證了相關性關系的不變性,公式如下

取log之后钓瞭,二者是一個線性關系驳遵,采用乘方運算來計算基因間的鄰接矩陣,用該矩陣構建共表達網(wǎng)絡時降淮,兩個基因之間的連線不在是有無的關系超埋,而有對應的數(shù)字的加權了搏讶,這個就是加權基因共表達網(wǎng)絡佳鳖。

在構建加權基因共表達網(wǎng)絡時有幾點注意事項,最關鍵的一點是樣本數(shù)目媒惕,當樣本太少時系吩,簡單線性相關系數(shù)并不能有效識別基因間的相關性,會出現(xiàn)很多基因間的相關系數(shù)完全一致的情況妒蔚,這樣的數(shù)據(jù)就很難進一步挖掘穿挨,官方推薦至少20個樣本月弛,另外就是基因表達譜的數(shù)據(jù)的預處理,在計算相關性時科盛,表達量數(shù)值很低的基因容易造成干擾帽衙,會發(fā)現(xiàn)它與非常多的基因都存在相關性,所以可以指定一個閾值贞绵,將表達量很低的基因去除厉萝。


WGCNA如何從module中挖掘關鍵基因

識別到與表型數(shù)據(jù)相關的modules之后,還可以在該modules中進一步篩選基因榨崩,為了方便篩選谴垫,對于每個基因定義了以下三個統(tǒng)計量

1. ?connectivity

連接度,在之前的文章中母蛛,簡單提過這個概念翩剪,類似于網(wǎng)絡中節(jié)點的degree的概念,只不過在加權共表達網(wǎng)絡中彩郊,由于每條邊代表兩個基因間的相關性的大小前弯,對應一個數(shù)值,所以一個基因在共表達網(wǎng)絡中的連接度定義為與該基因相連的所有邊的數(shù)值之和秫逝。

另外博杖,根據(jù)相連的基因是否和該基因位于同一個module, 又可以將邊分為兩類,和該基因位于同一個module內筷登,定義為within剃根, 位于不同的modules, 定義為out。在WGCNA中前方,可以通過intramodularConnectivity函數(shù)計算連接度狈醉,用法如下

# 計算基因間的鄰接值

ADJ1=abs(cor(datExpr,use="p"))^6

#計算連接度

Alldegrees1=intramodularConnectivity(ADJ1, colorh1)

計算的結果如下

> head(Alldegrees1)

kTotal kWithin kOut kDiff

Gene1 31.80186 28.37595 3.425906 24.95005

Gene2 28.88249 26.47896 2.403522 24.07544

Gene3 25.38600 23.11852 2.267486 20.85103

KTotal代表該基因的所有邊的連接度,KWithin代表和該基因位于同一個module下的邊的連接度惠险,KOut代表和該基因位于不同module下的邊的連接度苗傅,所以KTotal是KWithin和KOut之和,KDiff代表KWithin和KOut的差值班巩。

在module中渣慕,會存在hub gene的概念,所謂的hub gene, 就是該module下連接度最大的基因抱慌,注意此時只考慮位于該module下的邊逊桦,就是上文的KWithin。

2. module member-ship

簡稱MM, 將該基因的表達量與module的第一主成分抑进,即module eigengene進行相關性分析就可以得到MM值强经,所以MM值本質上是一個相關系數(shù),如果基因和某個module的MM值為0寺渗,說明二者根本不相關匿情,該基因不屬于這個module; 如果MM的絕對值接近1兰迫,說明基因與該module相關性很高。

在WGCNA中炬称,計算基因與module之間的MM值的代碼如下

datKME = signedKME(

datExpr,

datME,

outputColumnName="MM.")

第一個參數(shù)為基因表達量汁果,第二個參數(shù)為Module Eigengene值,結果如下

> head(datKME)

MM.blue MM.brown MM.green MM.grey MM.turquoise MM.yellow

Gene1 0.6830511 0.11547756 -0.007124794 0.2840109 0.9481457 0.09588170

Gene2 0.6342657 0.02257975 0.080277091 0.3029967 0.9356343 0.06889483

Gene3 -0.6198067 -0.12531203 0.008372054 -0.2776929 -0.9121710 -0.17852211

Gene4 0.5966736 0.06469079 0.049862112 0.2671967 0.9052030 0.11707603

Gene5 0.6642214 0.14369720 -0.017975774 0.2442237 0.9017972 -0.01038067

Gene6 -0.6018161 -0.15167072 0.006667131 -0.2053897 -0.9192597 -0.17138960

3. gene signigicancer

簡稱GS, 將該基因的表達量與對應的表型數(shù)值進行相關性分析玲躯,最終的相關系數(shù)的值就是GS, GS反映出基因表達量與表型數(shù)據(jù)的相關性须鼎,計算GS的代碼如下

GS1=as.numeric(cor(y,datExpr, use="p"))

通過以上三個量化指標,可以方便對module下的基因進行篩選府蔗。通常情況下晋控,通過module和表型數(shù)據(jù)的相關性分析,我們可以篩選得到和感興趣的某一表型相關的具體的modules姓赤,在該module下面深入挖掘基因時赡译,可以通過MM和GS兩個指標作為過濾手段,示例如下

FilterGenes= abs(GS1)> .2 & abs(datKME$MM.brown)>.8

假設brown是我們找到的和表型高度相關的module, 其中的關鍵基因可以定義為和brown這一表型的GS值大于0.2不铆,而且MM值大于0.8的基因蝌焚。篩選出關鍵基因后,可以通過功能富集分析進一步挖掘其功能誓斥。


WGCNA實戰(zhàn)練習

本文采用WGCNA官網(wǎng)的Tutirial 1的數(shù)據(jù)只洒,對加權基因共表達網(wǎng)絡分析和后續(xù)的數(shù)據(jù)挖掘的具體操作進行梳理, 數(shù)據(jù)可以從官網(wǎng)下載劳坑,示意圖如下

整個分析流程可以分為以下幾個步驟

1. 數(shù)據(jù)預處理

這部分包括以下4個內容

讀取基因表達量數(shù)據(jù)

對樣本和基因進行過濾

讀取樣本表型數(shù)據(jù)

可視化樣本聚類樹和表型數(shù)據(jù)

官方的示例數(shù)據(jù)是一個小鼠的芯片表達譜數(shù)據(jù)毕谴,包含了135個雌性小鼠的數(shù)據(jù),在提供的表達譜數(shù)據(jù)中距芬,除了探針I(yè)D和樣本表達量之外涝开,還有額外的探針注釋信息,在讀取原始數(shù)據(jù)時框仔,需要把多余注釋信息去除舀武,代碼如下

# 讀取文件

options(stringsAsFactors = FALSE)

femData = read.csv("LiverFemale3600.csv")

# 去除多余的注釋信息列

datExpr0 = as.data.frame(t(femData[, -c(1:8)]))

names(datExpr0) = femData$substanceBXH

rownames(datExpr0) = names(femData)[-c(1:8)]

對于基因的表達量數(shù)據(jù),需要進行過濾离斩,對于基因而言银舱,可以過濾缺失值或者低表達的基因,對于樣本而言跛梗,如果該樣本中基因缺失值很多寻馏,也需要過濾,WGCNA內置了一個檢驗基因和樣本的函數(shù)茄袖,通過該函數(shù)可以進行一個基本過濾操软,代碼如下

gsg = goodSamplesGenes(datExpr0)

if (!gsg$allOK) {

datExpr0 = datExpr0[gsg$goodSamples, gsg$goodGenes]

}

goodSamples和goodGenes就是需要保留的基因和樣本嘁锯∠芟椋基礎過濾之后聂薪,還可以看下是否存在離群值的樣本,通過樣本的聚類樹進行判斷蝗羊,代碼如下

plot(sampleTree,

?main = "Sample clustering to detect outliers",

?sub="", xlab="", cex.lab = 1.5,

?cex.axis = 1.5, cex.main = 2)

生成的圖片如下

從圖上可以看出藏澳,F(xiàn)2_221 這個樣本和其他樣本差距很大,可以將該樣本過濾掉耀找。代碼如下

clust = cutreeStatic(

?sampleTree,

?cutHeight = 15,

?minSize = 10)

keepSamples = (clust==1)

datExpr = datExpr0[keepSamples, ]

nGenes = ncol(datExpr)

nSamples = nrow(datExpr)

表型數(shù)據(jù)中也包含了不需要的列翔悠,而且其樣本比表達譜的樣本多,需要根據(jù)表達譜的樣本提取對應的表型數(shù)據(jù)野芒,代碼如下

# 讀取文件

traitData = read.csv("ClinicalTraits.csv")

# 刪除多余的列

allTraits = traitData[, -c(31, 16)]

allTraits = allTraits[, c(2, 11:36) ]

# 樣本和表達譜的樣本保持一致

femaleSamples = rownames(datExpr)

traitRows = match(femaleSamples, allTraits$Mice)

datTraits = allTraits[traitRows, -1]

rownames(datTraits) = allTraits[traitRows, 1]

表達譜數(shù)據(jù)和表型數(shù)據(jù)準備好之后蓄愁,可以繪制樣本聚類樹和表型的熱圖,代碼如下

# 由于去除了樣本狞悲,重新對剩余樣本聚類

sampleTree2 = hclust(dist(datExpr), method = "average")

traitColors = numbers2colors(datTraits, signed = FALSE)

plotDendroAndColors(

?sampleTree2,

?traitColors,

?groupLabels = names(datTraits),

?main = "Sample dendrogram and trait heatmap")

生成的圖片如下

上半部分為樣本的聚類樹撮抓,下班部分為樣本對應的表型的熱圖,順序和聚類樹中的順序一致摇锋,表達量從低到高丹拯,顏色從白色過渡到紅色,灰色代表缺失值荸恕。

2. 構建共表達網(wǎng)絡乖酬,識別modules

在構建共表達網(wǎng)絡時,將基因間的相關系數(shù)進行乘方運算來表征其相關性融求,首先需要確定乘方的值咬像,代碼如下

# 設定一些列power梯度

powers = c(c(1:10), seq(from = 12, to=20, by=2))

sft = pickSoftThreshold(datExpr, powerVector = powers, verbose = 5)

在sft這個對象中保存了每個power值計算出來的網(wǎng)絡的特征,結構如下

> str(sft)

List of 2

$ powerEstimate: num 6

$ fitIndices ? :'data.frame': ? ?15 obs. of ?7 variables:

?..$ Power ? ? ? ? : num [1:15] 1 2 3 4 5 6 7 8 9 10 ...

?..$ SFT.R.sq ? ? ?: num [1:15] 0.0278 0.1264 0.3404 0.5062 0.6807 ...

?..$ slope ? ? ? ? : num [1:15] 0.345 -0.597 -1.03 -1.422 -1.716 ...

?..$ truncated.R.sq: num [1:15] 0.456 0.843 0.972 0.973 0.94 ...

?..$ mean.k. ? ? ? : num [1:15] 747 254.5 111 56.5 32.2 ...

?..$ median.k. ? ? : num [1:15] 761.7 250.8 101.7 47.2 25.1 ...

?..$ max.k. ? ? ? ?: num [1:15] 1206 574 324 202 134 ...

其中powerEstimate就是最佳的power值生宛,fitIndices保存了每個power對應的網(wǎng)絡的特征施掏。我們可以對不同power取值下,網(wǎng)絡的特征進行可視化茅糜,代碼如下

plot(

?sft$fitIndices[,1],

?-sign(sft$fitIndices[,3])*sft$fitIndices[,2],

?xlab="Soft Threshold (power)",

?ylab="Scale Free Topology Model Fit,signed R^2",type="n",

?main = paste("Scale independence")

)

text(

?sft$fitIndices[,1],

?-sign(sft$fitIndices[,3])*sft$fitIndices[,2],

?labels=powers,

?cex=0.9,

?col="red"

)

abline(h=0.90, col="red")

生成的圖片如下

sft$fitIndices保存了每個power構建的相關性網(wǎng)絡中的連接度的統(tǒng)計值七芭,k就是連接度值,可以看到蔑赘,對于每個power值狸驳,提供了max,?median,?max3種連接度的統(tǒng)計量,這里對連接度的均值進行可視化缩赛,代碼如下

plot(

sft$fitIndices[,1],

sft$fitIndices[,5],

xlab="Soft Threshold (power)",

ylab="Mean Connectivity",

type="n",

main = paste("Mean connectivity")

)

text(

sft$fitIndices[,1],

sft$fitIndices[,5],

labels=powers,

cex=cex1,

col="red"

)

生成的圖片如下

確定好power值之后耙箍,可以直接構建相關性網(wǎng)絡

net = blockwiseModules(

datExpr,

power = sft$powerEstimate,

TOMType = "unsigned",

minModuleSize = 30,

reassignThreshold = 0,

mergeCutHeight = 0.25,

numericLabels = TRUE,

pamRespectsDendro = FALSE,

saveTOMs = TRUE,

saveTOMFileBase = "femaleMouseTOM",

verbose = 3)

net對象中保存了所有相關性網(wǎng)絡和module的結果,可以將基因的聚類樹和對應的module進行可視化酥馍,代碼如下

mergedColors = labels2colors(net$colors)

plotDendroAndColors(

?net$dendrograms[[1]],

?mergedColors[net$blockGenes[[1]]],

?"Module colors",

?dendroLabels = FALSE,

?hang = 0.03,

?addGuide = TRUE,

?guideHang = 0.05

)

生成的圖片如下

上方為基因的聚類樹辩昆,聚類時的距離為1-TOM值,下方為基因對應的modules旨袒。類似的汁针,還可以結合基因間的距離术辐,即1-TOM值,用熱圖展示施无,代碼如下

geneTree = net$dendrograms[[1]]

moduleColors = labels2colors(net$colors)

dissTOM = 1 - TOMsimilarityFromExpr(

?datExpr,

?power = sft$powerEstimate)

plotTOM = dissTOM ^ 7

diag(plotTOM) = NA

TOMplot(

?plotTOM,

?geneTree,

?moduleColors,

?main = "Network heatmap plot, all genes"

)

生成的圖片如下

在前面文章我們提到過辉词,在識別module的過程中共,首先用dynamicTreeCut識別modules, 然后根據(jù)Module eigengene間的相關性合并modules,net`這個對象中保存了合并前和合并后的modules, 可以將二者畫在同一張圖上猾骡,可視化代碼如下

unmergedColors = labels2colors(net$unmergedColors)

mergedColors ? = labels2colors(net$colors)

plotDendroAndColors(

?net$dendrograms[[1]],

?cbind(unmergedColors[net$blockGenes[[1]]], mergedColors[net$blockGenes[[1]]]),

?c("Dynamic Tree Cut" , "Merged colors"),

?dendroLabels = FALSE,

?hang = 0.03,

?addGuide = TRUE,

?guideHang = 0.05

)

生成的圖片如下

對于合并前的modules, 其相關性分析的結果可視化如下

unmergedColors = labels2colors(net$unmergedColors)

MEList = moduleEigengenes(datExpr, colors = unmergedColors)

MEs = MEList$eigengenes

MEDiss = 1-cor(MEs)

METree = hclust(as.dist(MEDiss), method = "average")

plot(METree,

? ? main = "Clustering of module eigengenes",

? ? xlab = "",

? ? sub = "")

生成的圖片如下

對于每個module而言瑞躺,我們希望知道該module下對應的基因,提取方式如下

> moduleColors = labels2colors(net$colors)

> unique(moduleColors)

[1] "grey" ? ? ? ? "turquoise" ? ?"grey60" ? ? ? "yellow" ? ? ? "tan" ? ? ? ?

[6] "green" ? ? ? ?"red" ? ? ? ? ?"black" ? ? ? ?"blue" ? ? ? ? "midnightblue"

[11] "cyan" ? ? ? ? "magenta" ? ? ?"salmon" ? ? ? "lightgreen" ? "brown" ? ? ?

[16] "purple" ? ? ? "pink" ? ? ? ? "greenyellow" ?"lightcyan"

> head(names(datExpr)[moduleColors=="red"])

[1] "MMT00000159" "MMT00000793" "MMT00000840" "MMT00001154" "MMT00001245"

[6] "MMT00001260"

同樣我們也可以提取module對應的基因表達量數(shù)據(jù)兴想,繪制熱圖, 代碼如下

which.module="red"

plotMat(

t(scale(datExpr[,moduleColors==which.module ]) ),

nrgcols=30,

rlabels=F,

rcols=which.module,

main=which.module,

cex.main=2

)

生成的圖片如下

3. 篩選與表型相關的modules

本質上是計算module的ME值與表型的相關系數(shù)幢哨,代碼如下

nGenes = ncol(datExpr)

nSamples = nrow(datExpr)

MEs0 = moduleEigengenes(datExpr, moduleColors)$eigengenes

MEs = orderMEs(MEs0)

moduleTraitCor = cor(

MEs,

datTraits,

use = "p"

)

moduleTraitPvalue = corPvalueStudent(

moduleTraitCor,

nSamples

)

可以對module和表型間的系數(shù)的結果進行可視化,代碼如下

textMatrix = ?paste(

signif(moduleTraitCor, 2),

"\n(",

signif(moduleTraitPvalue, 1),

")",

sep = ""

)

dim(textMatrix) = dim(moduleTraitCor)

labeledHeatmap(

Matrix = moduleTraitCor,

xLabels = names(datTraits),

yLabels = names(MEs),

ySymbols = names(MEs),

colorLabels = FALSE,

colors = blueWhiteRed(50),

textMatrix = textMatrix,

setStdMargins = FALSE,

cex.text = 0.5,

zlim = c(-1,1),

main = paste("Module-trait relationships")

)

生成的圖片如下

指定一個我們感興趣的表型嫂便,可以得到與其相關性最高的module, 代碼如下

> which.trait <- "weight_g"

> moduleTraitCor[, which.trait]

> moduleTraitCor[, which.trait]

? ? MEmagenta ? ? ? ?MEblack ? ?MEturquoise ? ? ? ?MEgreen ? ?MElightcyan

?-0.017418109 ? -0.312679561 ? -0.272907078 ? ?0.001339804 ? -0.128053858

? ? ? ?MEblue ? ? ? ?MEbrown ? ? ? ? ?MEred ? ? ? MEsalmon ? ? ? MEyellow

? 0.314323101 ? ?0.591340840 ? ?0.509942529 ? ?0.432058666 ? ?0.219900538

?MElightgreen ?MEgreenyellow ? ? ? MEgrey60 ? ? ? ? MEpink ? ? ? MEpurple

?-0.057215182 ? -0.022394396 ? -0.016705204 ? -0.051495573 ? -0.021167541

? ? ? ? MEtan ? ? ? ? MEcyan MEmidnightblue ? ? ? ? MEgrey

? 0.269827166 ? ?0.181595161 ? ?0.193569095 ? ?0.089702947

以上結果中嘱么,和weight_g最相關的為module為MEred,當然也可以自己指定一個閾值顽悼,篩選出多個候選的modules曼振。在WGCNA中,對于基因定義了GS值蔚龙,表征基因和表型之間的相關性冰评,對于module而言,也可以用所有基因GS絕對值的平均數(shù)來表征該module與表型之間的相關性木羹,代碼如下

moduleColors = labels2colors(net$colors)

which.trait <- "weight_g"

y <- datTraits[, which.trait]

GS <- as.numeric(cor(y ,datExpr, use="p"))

GeneSignificance <- ?abs(GS)

ModuleSignificance <- tapply(

GeneSignificance,

moduleColors, mean, na.rm=T)

plotModuleSignificance(GeneSignificance, moduleColors)

生成的圖片如下

可以看到brown,?red這兩個模塊和體重相關甲雅。對于ME和某一表型而言,還可以將數(shù)據(jù)合并坑填,聚類展示抛人,代碼如下

weight <- datTraits[, which.trait]

MEs0 = moduleEigengenes(datExpr, moduleColors)$eigengenes

MEs = orderMEs(MEs0)

MET = orderMEs(cbind(MEs, weight))

par(mar = c(4, 2, 1, 2), cex = 0.9)

plotEigengeneNetworks(

MET, "",

marDendro = c(0,4,1,2),

marHeatmap = c(3,4,1,2),

cex.lab = 0.8,

xLabelsAngle = 90

)

生成的圖片如下

4. 篩選關鍵基因

篩選出與表型高相關的modules之后,還可以對modules下的基因進行進一步篩選脐瑰,主要根據(jù)GS值和MM值妖枚,代碼如下

datKME = signedKME(

datExpr,

MEs,

outputColumnName="MM.")

FilterGenes= abs(GS1)> .2 & abs(datKME$MM.brown)>.8

篩選出候選基因后,可以進行下游的功能富集分析苍在,使用clusterProfiler等R包绝页,進一步挖掘功能,之前的文章有詳細介紹如何進行富集分析寂恬,這里就不展開了续誉。

5. 導出module數(shù)據(jù), 繪制網(wǎng)絡圖

可以導出指定modules對應的基因共表達網(wǎng)絡,方便可視化初肉,代碼如下

TOM = TOMsimilarityFromExpr(datExpr, power = 6)

modules = c("brown", "red")

probes = names(datExpr)

inModule = is.finite(match(moduleColors, modules));

modProbes = probes[inModule];

modTOM = TOM[inModule, inModule];

dimnames(modTOM) = list(modProbes, modProbes)

cyt = exportNetworkToCytoscape(

modTOM,

edgeFile = paste("CytoscapeInput-edges-", paste(modules, collapse="-"), ".txt", sep=""),

nodeFile = paste("CytoscapeInput-nodes-", paste(modules, collapse="-"), ".txt", sep=""),

weighted = TRUE,

threshold = 0.02,

nodeNames = modProbes,

nodeAttr = moduleColors[inModule]

)

最終會生成以下兩個文件酷鸦,可以導入cytoscape進行繪圖

CytoscapeInput-edges-brown-red.txt

CytoscapeInput-nodes-brown-red.txt

當然也支持導出VisANT軟件支持的格式,詳細用法請參閱官網(wǎng)的幫助文檔。

·end·


*****看完了才發(fā)現(xiàn)其實官網(wǎng)是原版臼隔,看完官網(wǎng)才發(fā)現(xiàn)嘹裂,其實這個資料更直白,附鏈接https://wenku.baidu.com/view/068a1d0d3069a45177232f60ddccda38376be1aa.html

總之躬翁,各種資料都看一遍焦蘑,有助于理解吧盯拱。

最后附上一個找到的視頻盒发,有人講解當然更靠譜!大家加油狡逢!http://www.omicshare.com/class/home/index/singlev/id/20/chpid/23/id2/Mg==

又看到比較靠譜的宁舰,當作復習看吧。https://mp.weixin.qq.com/s/n2DDYAvnnDO5Gw8QsrXCXQ

http://www.reibang.com/p/b7626aef5efb

https://mp.weixin.qq.com/s/OUPcQ4tl26x4QiDBMRTbIg

https://mp.weixin.qq.com/s/tGZcSqL0lzb3pJlX1TnfpA

這是文獻分析

https://mp.weixin.qq.com/s/-DthUKY2RTY6vxtxapzLkw

我就是資料整理者奢浑!

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末蛮艰,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子雀彼,更是在濱河造成了極大的恐慌壤蚜,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,126評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件徊哑,死亡現(xiàn)場離奇詭異袜刷,居然都是意外死亡,警方通過查閱死者的電腦和手機莺丑,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評論 2 382
  • 文/潘曉璐 我一進店門著蟹,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人梢莽,你說我怎么就攤上這事萧豆。” “怎么了昏名?”我有些...
    開封第一講書人閱讀 152,445評論 0 341
  • 文/不壞的土叔 我叫張陵涮雷,是天一觀的道長。 經(jīng)常有香客問我轻局,道長份殿,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,185評論 1 278
  • 正文 為了忘掉前任嗽交,我火速辦了婚禮卿嘲,結果婚禮上,老公的妹妹穿的比我還像新娘夫壁。我一直安慰自己拾枣,他們只是感情好,可當我...
    茶點故事閱讀 64,178評論 5 371
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著梅肤,像睡著了一般司蔬。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上姨蝴,一...
    開封第一講書人閱讀 48,970評論 1 284
  • 那天俊啼,我揣著相機與錄音,去河邊找鬼左医。 笑死授帕,一個胖子當著我的面吹牛,可吹牛的內容都是我干的浮梢。 我是一名探鬼主播跛十,決...
    沈念sama閱讀 38,276評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼秕硝!你這毒婦竟也來了芥映?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 36,927評論 0 259
  • 序言:老撾萬榮一對情侶失蹤远豺,失蹤者是張志新(化名)和其女友劉穎奈偏,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體躯护,經(jīng)...
    沈念sama閱讀 43,400評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡惊来,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 35,883評論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了榛做。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片唁盏。...
    茶點故事閱讀 37,997評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖检眯,靈堂內的尸體忽然破棺而出厘擂,到底是詐尸還是另有隱情,我是刑警寧澤锰瘸,帶...
    沈念sama閱讀 33,646評論 4 322
  • 正文 年R本政府宣布刽严,位于F島的核電站,受9級特大地震影響避凝,放射性物質發(fā)生泄漏舞萄。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,213評論 3 307
  • 文/蒙蒙 一管削、第九天 我趴在偏房一處隱蔽的房頂上張望倒脓。 院中可真熱鬧,春花似錦含思、人聲如沸崎弃。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,204評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽饲做。三九已至线婚,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間盆均,已是汗流浹背塞弊。 一陣腳步聲響...
    開封第一講書人閱讀 31,423評論 1 260
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留泪姨,地道東北人游沿。 一個月前我還...
    沈念sama閱讀 45,423評論 2 352
  • 正文 我出身青樓,卻偏偏與公主長得像驴娃,于是被迫代替她去往敵國和親奏候。 傳聞我的和親對象是個殘疾皇子循集,可洞房花燭夜當晚...
    茶點故事閱讀 42,722評論 2 345

推薦閱讀更多精彩內容