WGCNA分析WGCNAWGCNA分析

WGCNA(5):模块导出至其他可视化软件

2021-10-26  本文已影响0人  Wei_Sun

这篇文章是WGCNA系列的最后一篇,其余见链接:
WGCNA(1):R包安装及数据导入清洗 - 简书 (jianshu.com)
WGCNA(2a):一步法完成网络构建和模块检测 - 简书 (jianshu.com)
WGCNA(2b):分步法完成网络构建和模块检测 - 简书 (jianshu.com)
WGCNA(3):基因模块与性状关联识别重要基因 - 简书 (jianshu.com)

参考材料是官方说明书:
https://horvath.genetics.ucla.edu/html/CoexpressionNetwork/Rpackages/WGCNA/Tutorials/FemaleLiver-06-ExportNetwork.pdf

1. 准备工作

导入前期数据,这里我选择了分步法构建网络的结果,大家可以根据自己的数据选择使用哪种方法构建网络。

# 设置工作目录
> setwd("D:/RNA-seq/WGCNA/mad0.3/cor 0.25")
# 载入WGCNA包
> library('WGCNA')
# 允许R语言以最大线程运行
> options(stringsAsFactors = FALSE)
> allowWGCNAThreads()
Allowing multi-threading with up to 4 threads.
# 载入第一步中的表达量和表型值
> lnames = load(file = "WGCNA0.3-dataInput.RData")
> lnames
# 载入第二步的网络数据
> lnames = load(file = "networkConstruction-stepByStep.RData")
> lnames

2. 模块导出至其他可视化软件

2.1 导出至VisANT

重新计算TOM,这里真的建议大家在第二步把TOM保存下来,否则后面每一步都要重新计算。

> TOM = TOMsimilarityFromExpr(datExpr, power = 6)
# 选择感兴趣的基因模块
> module = "brown"
# 选取module中的基因
> probes = names(datExpr)
> inModule = (moduleColors==module)
> modProbes = probes[inModule]
# 选择对应的拓扑重叠
> modTOM = TOM[inModule, inModule]
> dimnames(modTOM) = list(modProbes, modProbes)
# 输出为VisANT可以读取的文件
> vis = exportNetworkToVisANT(modTOM, file = paste("VisANTInput-", module, ".txt", sep=""),weighted = TRUE,threshold = 0)

2.2 导出至 Cytoscape

> cyt = exportNetworkToCytoscape(modTOM,edgeFile = paste("CytoscapeInput-edges-", paste(module, collapse="-"), ".txt", sep=""), nodeFile = paste("CytoscapeInput-nodes-", paste(module,  collapse="-"), ".txt", sep=""),weighted = TRUE, threshold = 0.1,nodeNames = modProbes, nodeAttr = moduleColors[inModule])

由于brown这个module比较大,含有的基因比较多,可以选择只输出30个核心(hub)基因。

> nTop = 30
> IMConn = softConnectivity(datExpr[, modProbes])
> top = (rank(-IMConn) <= nTop)
> vis = exportNetworkToVisANT(modTOM[top, top],file = paste("VisANTInput-", module, "-top30.txt", sep=""),weighted = TRUE,threshold = 0 )

也可以通过阈值来调整基因的数目,对于我自己数据threshold = 0.1时,edge只有27个,调整到0.08,则有218个。

上一篇下一篇

猜你喜欢

热点阅读