細(xì)膩小白上一節(jié)我分享了學(xué)習(xí)?WGCNA的第一部分,主要介紹了WGCNA以及第一部分的數(shù)據(jù)預(yù)處理笑诅。今天我將繼續(xù)學(xué)習(xí)學(xué)WGCNA的第二部分吐辙,即數(shù)據(jù)的處理宣决,并介紹解讀代碼。
首先昏苏,讀取數(shù)據(jù)尊沸。(回顧一下,這是另一個(gè)數(shù)據(jù)的“長(zhǎng)相”)
allTraits = read.csv("D:/practice/test/clin_data.csv")
datTraits = allTraits[match(rownames(datExpr),allTraits$flavor_name),]
rownames(datTraits) = ?datTraits[,1]
datTraits = datTraits[,-1]
1. 讀取數(shù)據(jù)贤惯;
2. 將這個(gè)數(shù)據(jù)和上一個(gè)數(shù)據(jù)表洼专,按照f(shuō)lavor_name匹配在一起,方便后面的處理救巷;
3. 第一列作為行名壶熏;
4. 把多出的重復(fù)的第一列去掉。
已經(jīng)刪去不需要的部分浦译,再次聚類(lèi)檢查數(shù)據(jù)棒假。
sampleTree2 = hclust(dist(datExpr), method = "average")?
traitColors = numbers2colors(datTraits, signed = FALSE)
#pdf(file = 'D:/practice/test/re_clust.pdf',width = 12,height = 8)
plotDendroAndColors(sampleTree2,traitColors,groupLabels = names(datTraits),main='Sample dendrogram and trait heatmap')
#dev.off()
1. 使用平均的算法對(duì)樣本聚類(lèi)溯职;
2. 定義出將要繪制熱圖中的顏色分組;
3. 繪制出聚類(lèi)熱圖帽哑,檢查樣本的分組信息谜酒;
4. #根據(jù)自己需要,使用pdf的函數(shù)妻枕。
繪制出樣本聚類(lèi)圖以及臨床特征熱圖
圖如下僻族,上半部分就是樣本的聚類(lèi)圖,標(biāo)注為樣本名屡谐;下半部分為臨床數(shù)據(jù)特征熱圖述么。
對(duì)數(shù)據(jù)完成了基本的處理,我們就準(zhǔn)備開(kāi)始仔細(xì)分析愕掏。
在分析前度秘,我還是想要簡(jiǎn)單講一下WGCNA的weighted部分!饵撑!加權(quán)剑梳,給了這個(gè)網(wǎng)絡(luò)一個(gè)權(quán)重,這個(gè)權(quán)重是什么滑潘?原理是什么垢乙?
(不會(huì)太難的,都是用白話(huà)和自己的理解语卤,希望看完你們也有自己的理解追逮,歡迎討論)
加權(quán)是指對(duì)相關(guān)性值(也就是網(wǎng)絡(luò)的邊)進(jìn)行冪運(yùn)算,冪次的值就是軟閾值?(這里是指粹舵,這個(gè)邊界值/閾值是可以根據(jù)計(jì)算的結(jié)果來(lái)調(diào)整的羊壹,不是硬要求)。
無(wú)向網(wǎng)絡(luò)的邊屬性計(jì)算方式為?abs(cor(geneX, geneY)) ^ power齐婴。
這種處理方式強(qiáng)化了強(qiáng)相關(guān),弱化了弱相關(guān)或負(fù)相關(guān)稠茂,使得相關(guān)性數(shù)值更符合無(wú)標(biāo)度網(wǎng)絡(luò)特征柠偶,更具有生物意義。如果沒(méi)有合適的閾值power睬关,一般是由于部分樣品與其它樣品因?yàn)槟撤N原因差別太大導(dǎo)致的诱担,可根據(jù)具體問(wèn)題移除部分樣品或查看后面的經(jīng)驗(yàn)值。這也是我們前面為何搞了那么多步的數(shù)據(jù)檢查电爹。
所以蔫仙,看了上面這一段,也就明白了加權(quán)從何而來(lái)丐箩,以及我們接下來(lái)要進(jìn)行的步驟摇邦。
把軟閾值/冪的值確定下來(lái)
powers=c(c(1:10),seq(from = 12, to = 20, by = 2))
sft = pickSoftThreshold(datExpr, powerVector = powers, verbose = 5)
設(shè)置閾值向量恤煞,并且使用網(wǎng)絡(luò)拓?fù)浞治龊瘮?shù)
sizeGrWindow(9, 5)?
par(mfrow = c(1,2))
cex1 = 0.9
#pdf(file = 'D:/practice/test/power.pdf',width = 12,height = 8)
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=cex1,col="red")
abline(h=0.90,col="red")?
軟閾值β與無(wú)尺度網(wǎng)絡(luò)評(píng)價(jià)系數(shù)的關(guān)系
(說(shuō)成“人話(huà)”,就是不同軟閾值出來(lái)的網(wǎng)絡(luò)是不一樣施籍,由此會(huì)影響網(wǎng)絡(luò)的評(píng)價(jià)系數(shù)/評(píng)估網(wǎng)絡(luò)的系數(shù))
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")
#dev.off()
軟閾值β與平局連通性的關(guān)系
(連通性就是網(wǎng)絡(luò)的邊居扒,探討的就是軟閾值對(duì)網(wǎng)絡(luò)邊的影響)
繪制出的結(jié)果如下圖
從左圖中可以看到,6開(kāi)始出現(xiàn)一個(gè)明顯地變平緩的趨勢(shì)丑慎,所以暫定軟閾值為6喜喂;再觀(guān)察右邊的圖,可以發(fā)現(xiàn)在6竿裂、7左右出現(xiàn)一個(gè)顯然的斜率(看絕對(duì)值)變小的趨勢(shì)玉吁。因此評(píng)估出來(lái),6是一個(gè)拐點(diǎn)處腻异,即選擇作為軟閾值/冪次的值进副。
到此為止,我們的所有前期工作就完成了捂掰。
下一期敢会,我們將徹底結(jié)束剩余的分析部分。
每周進(jìn)步一點(diǎn)點(diǎn)这嚣,如果你有任何的建議和疑問(wèn)鸥昏,都?xì)g迎你積極地提出,我們會(huì)盡全力改進(jìn)和回答的~~~
(完)
聯(lián)系我們
官方網(wǎng)頁(yè) :https://www.yiqishiyan.com/index
咨詢(xún)客服?:Yqsyw12345?(微信號(hào))