日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

WGCNA 简明指南|2. 模块与性状关联分析并识别重要基因

發布時間:2023/12/20 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 WGCNA 简明指南|2. 模块与性状关联分析并识别重要基因 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

WGCNA 簡明指南|2. 模塊與性狀關聯分析并識別重要基因

WGCNA 系列

  • WGCNA 簡明指南|1. 基因共表達網絡構建及模塊識別


    • WGCNA 系列

    • 參考

    • 關聯模塊與臨床特征

      • 量化module-trait(模塊-特征)關系

      • 基因與性狀和重要模塊的關系:基因重要性和模塊成員

      • 模塊內分析:鑒定高GS和MM基因

      • 網絡分析結果匯總輸出

    • 模塊基因富集分析

    • 往期

    參考

    本文主要參考官方指南Tutorials for WGCNA R package (ucla.edu),詳細內容可參閱官方文檔。

    其它資料:

  • WGCNA - 文集 - 簡書 (jianshu.com)

  • WGCNA分析,簡單全面的最新教程 - 簡書 (jianshu.com)

  • WGCNA:(加權共表達網絡分析)_bioprogrammer-CSDN博客

  • WGCNA如何從module中挖掘關鍵基因_廬州月光的博客-CSDN博客

  • 關聯模塊與臨床特征

    如果前面沒保存再跑一遍WGCNA 簡明指南|1. 基因共表達網絡構建及模塊識別以得到本次分析需要的數據。

    量化module-trait(模塊-特征)關系

    在這個分析中,我們希望識別與臨床特征顯著相關的模塊。由于我們已經有了每個模塊的特征基因,我們簡單地將特征基因與臨床特征關聯起來,并尋找最顯著的關聯。

    Module eigengene?

    Module eigengene is defined as the first principal component of the expression matrix of the corresponding module.

    #?導入之前的數據(也可以重新跑一遍上一期的內容) lnames?=load(file="FemaleLiver-02-networkConstruction-auto.RData"); lnames #?明確基因和樣本數 nGenes?=ncol(datExpr); nSamples?=nrow(datExpr); #?用顏色標簽重新計算MEs #?按照模塊計算每個module的MEs(也就是該模塊的第一主成分) MEs0?=?moduleEigengenes(datExpr,?moduleColors)$eigengenes #?對給定的(特征)向量重新排序,使相似的向量(通過相關性測量)彼此相鄰。 MEs?=?orderMEs(MEs0) #?計算基因模塊MEs?與?臨床特征的相關性以及p值 #?use?給出在缺少值時計算協方差的方法? moduleTraitCor?=cor(MEs,?datTraits,?use?="p"); moduleTraitPvalue?=?corPvalueStudent(moduleTraitCor,?nSamples)

    可視化

    #?如需保存 #?pdf("Module-trait?associations.pdf",width?=?8,?height=10) par(mar?=c(6,?8.5,?3,?3)); #?通過熱圖顯示相關性 labeledHeatmap(Matrix?=?moduleTraitCor,xLabels?=names(datTraits),yLabels?=names(MEs),ySymbols?=names(MEs),colorLabels?=?FALSE,colors=?greenWhiteRed(50),textMatrix?=?textMatrix,setStdMargins?=?FALSE,cex.text=?0.5,zlim?=c(-1,1),main?=paste("Module-traitrelationships"))#?dev.off()圖1:模塊-特征關聯。每一行對應一個模塊特征基因,每一列對應一個性狀。每個單元格包含相應的相關性和p值。根據顏色圖例,該表通過相關性進行顏色編碼

    基因與性狀和重要模塊的關系:基因重要性和模塊成員

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

    Gene Significance簡稱GS, 將該基因的表達量與對應的表型數值進行相關性分析,最終的相關系數的值就是GS, GS反映出基因表達量與表型數據的相關性。

    #?以特征變量weight?為例 weight?=as.data.frame(datTraits$weight_g); names(weight)?="weight" #?命名模塊 modNames?=substring(names(MEs),?3) geneModuleMembership?=as.data.frame(cor(datExpr,?MEs,?use?="p")); MMPvalue?=as.data.frame(corPvalueStudent(as.matrix(geneModuleMembership),?nSamples)); names(geneModuleMembership)?=paste("MM",?modNames,?sep=""); names(MMPvalue)?=paste("p.MM",?modNames,?sep=""); geneTraitSignificance?=as.data.frame(cor(datExpr,?weight,?use?="p")); GSPvalue?=as.data.frame(corPvalueStudent(as.matrix(geneTraitSignificance),?nSamples)); names(geneTraitSignificance)?=paste("GS.",names(weight),?sep=""); names(GSPvalue)?=paste("p.GS.",names(weight),?sep="");

    模塊內分析:鑒定高GS和MM基因

    在感興趣的基因模塊中,篩選出高GSMM的基因。在圖1中可以看到,與性狀weight_g相關性最高的基因模塊是MEbrown,因此選擇MEbrown進行后續分析,繪制brown模塊中GS和MM的散點圖。

    module?="brown" column?=match(module,?modNames); moduleGenes?=?moduleColors==module; sizeGrWindow(7,?7); par(mfrow?=c(1,1)); verboseScatterplot(abs(geneModuleMembership[moduleGenes,?column]),abs(geneTraitSignificance[moduleGenes,?1]),xlab?=paste("ModuleMembershipin",?module,"module"),ylab?="Genesignificanceforbodyweight",main?=paste("Modulemembershipvs.genesignificance\n"),cex.main?=?1.2,?cex.lab?=?1.2,?cex.axis=?1.2,col=?module)圖2:棕色模塊中weight與模塊成員(MM)的基因顯著性(GS)散點圖。在這個模塊中,GS和MM之間存在極顯著的相關性

    如圖2所示,GS和MM是高度相關的,這說明與一個性狀高度相關的基因往往也是與該性狀相關的模塊中最重要的(中心)元素。

    網絡分析結果匯總輸出

    我們已經找到了與我們的興趣特征高度相關的模塊,并通過MM確定了它們的核心參與者。現在,我們將這些統計信息與基因注釋合并并導出。

    names(datExpr) #?返回brown模塊中所有ID names(datExpr)[moduleColors=="brown"] #?導入注釋文件 annot?=?read.csv(file?=?"GeneAnnotation.csv"); dim(annot) names(annot) probes?=?names(datExpr) probes2annot?=?match(probes,?annot$substanceBXH) #?統計沒有注釋到的基因 sum(is.na(probes2annot)) #?創建數據集,包含探測ID?, geneInfo0?=?data.frame(substanceBXH?=?probes,?geneSymbol?=?annot$gene_symbol[probes2annot],?LocusLinkID?=?annot$LocusLinkID[probes2annot],?moduleColor?=?moduleColors,?geneTraitSignificance,?GSPvalue) #?通過顯著性對模塊進行排序 modOrder?=?order(-abs(cor(MEs,?weight,?use?=?"p"))) #?添加模塊成員 for?(mod?in?1:ncol(geneModuleMembership)) {oldNames?=?names(geneInfo0)geneInfo0?=?data.frame(geneInfo0,?geneModuleMembership[,?modOrder[mod]],MMPvalue[,?modOrder[mod]]);names(geneInfo0)?=?c(oldNames,?paste("MM.",?modNames[modOrder[mod]],?sep=""),paste("p.MM.",?modNames[modOrder[mod]],?sep="")) } #?對基因進行排序 geneOrder?=?order(geneInfo0$moduleColor,?abs(geneInfo0$GS.weight)) geneInfo?=?geneInfo0[geneOrder,?] #?導出 write.csv(geneInfo,?file?=?"geneInfo.csv")

    模塊基因富集分析

    批量導出模塊基因后,使用在線網站或者R包clusterProfiler進行富集分析。

    #?Get?the?corresponding?Locuis?Link?IDs allLLIDs?=?annot$LocusLinkID[probes2annot]; #?選擇感興趣的模塊 intModules?=?c("brown",?"red",?"salmon") for?(module?in?intModules) {#?模塊探針modGenes?=?(moduleColors==module)#?得到?entrez?ID?modLLIDs?=?allLLIDs[modGenes];#?導出fileName?=?paste("LocusLinkIDs-",?module,?".txt",?sep="");write.table(as.data.frame(modLLIDs),?file?=?fileName,row.names?=?FALSE,?col.names?=?FALSE) }

    往期

  • 跟著Nature學作圖 | 配對啞鈴圖+分組擬合曲線+分類變量熱圖

  • (免費教程+代碼領取)|跟著Cell學作圖系列合集

  • 跟著Nat Commun學作圖 | 1.批量箱線圖+散點+差異分析

  • 跟著Nat Commun學作圖 | 2.時間線圖

  • 跟著Nat Commun學作圖 | 3.物種豐度堆積柱狀圖

  • 跟著Nat Commun學作圖 | 4.配對箱線圖+差異分析


  • 總結

    以上是生活随笔為你收集整理的WGCNA 简明指南|2. 模块与性状关联分析并识别重要基因的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。