欢迎关注微信公众号《生信修炼手册》!

单纯的共表达基因集合的结果并不能与我们的实验设计相关联,对于识别到的几十个共表达基因集合,一一进行富集分析去挖掘其功能,看上去如此的盲目,没有目的性,所以我们需要对共表达基因集进一步挖掘,常规的做法就是分析其中与性状相关的共表达基因,然后针对这些基因通过富集分析来研究其功能。

在WGCNA中,有两种常见的关联表型与共表达基因的方法

1. 相关性分析

这种方法要求提供每个样本对应的表型数据的值,利用这个值与module的第一主成分值进行相关性分析,根据相关性分析的结果。识别与表型相关联的modules。

表型数据示例如下

sample weight_g length_cm ab_fat
F2_290 36.9 9.9 2.53
F2_291 48.5 10.7 2.9
F2_292 45.7 10.4 1.04
F2_293 50.3 10.9 0.91

第一列为样本,其他列代表不同的表型,尽量不要有空值,早进行相关性分析时,空值会被剔除,所以太多的空值会影响相关性分析的结果。

在识别modules的过程中,会根据module的第一主成分,即ME值合并modules, 合并之后的modules需要重新计算对应的ME值,然后用ME值与对应的表型数据的值进行相关性分析,代码如下

# 重新计算ME值
MEs0 <- moduleEigengenes(datExpr, moduleColors)$eigengenes
MEs <- orderMEs(MEs0)# 计算ME与表型之间的相关系数和p值
moduleTraitCor <- cor(MEs, datTraits, use = "p");
moduleTraitPvalue <- corPvalueStudent(moduleTraitCor, nSamples);# 用热图展示相关性的结果
# 每个单元格标记相关系数和p值
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 = greenWhiteRed(50),textMatrix = textMatrix,setStdMargins = FALSE,cex.text = 0.5,zlim = c(-1,1),main = paste("Module-trait relationships"))

可视化的结果如下

在该图中,每一行代表一个module, 每一列代表一种表型,每个单元格的颜色由对应的相关系数进行映射,数值从从-1到1,颜色由绿色过渡到白色,然后过渡到红色。这里在运行时,会有一个有趣的小提示,因为红绿色盲的原因,不推荐采用绿色到红色的颜色渐变,建议采用蓝色到红色的渐变,只需要把greenWhiteRed替换为blueWhiteRed即可,效果图如下

可视化结果比较直观,在实际操作中,可以根据相关系数排序,筛选与某个表型最相关的module。

上述只是基本用法,适用于样本属于同一组的情况。设想一下,在组间差异非常大的情况下, 不同分组条件下modules与表型数据的相关性结果肯定也会不同,所以对于样本具有不同分组的数据,需要不同分组分开分析,WGCNA当然也支持这样的分析,不同分组的表达量保存在不同文件中,然后构建一个list对象,长度和分组个数相同,每个元素对应一个分组条件下的表达量数据

# 样本分为male和female两组,分开读取
femData = read.csv("LiverFemale3600.csv")maleData = read.csv("LiverMale3600.csv")# 分组个数
nSets = 2;setLabels = c("Female liver", "Male liver")
shortLabels = c("Female", "Male")# 构建总的表达量,长度为nSets的list
multiExpr = vector(mode = "list", length = nSets)# 每个元素对应一个分组下的表达量数据
multiExpr[[1]] = list(data = as.data.frame(t(femData[-c(1:8)])));
names(multiExpr[[1]]$data) = femData$substanceBXH;
rownames(multiExpr[[1]]$data) = names(femData)[-c(1:8)];multiExpr[[2]] = list(data = as.data.frame(t(maleData[-c(1:8)])));
names(multiExpr[[2]]$data) = maleData$substanceBXH;
rownames(multiExpr[[2]]$data) = names(maleData)[-c(1:8)];

通过上述方式合并不同分组对应的表达量数据,然后一起识别modules, 不考虑分组,所有样本一起识别到的module称为consensus modules, 在后续与表型数据进行相关性分析时,通过循环,对每一组单独进行分析,代码如下

moduleTraitCor = list()
moduleTraitPvalue = list()for (set in 1:nSets)
{moduleTraitCor[[set]] = cor(consMEs[[set]]$data,Traits[[set]]$data,use = "p")
}

for循环中的代码和一开始提到的基本用法一致,所以对于每个group, 都可以产生上述的相关性结果的热图,除此之外,还可以分析在不同分组中,共表达的趋势是否一致,如果表达趋势不同,一个为正相关,一个为父相关,则用NA表示, 可以得到如下所示的热图

在该图中,只有在两组中共表达趋势相同的modules才会有颜色填充。

所谓的与表型数据关联,其实就是一个相关性分析,最后可以根据相关性的分析结果,筛选与某种表型显著相关的modules。更多细节请参考官方文档。

扫描关注微信号,更多精彩内容等着你!

WGCNA将共表达基因与表型数据相关联相关推荐

  1. 基因共表达网络分析java,基因共表达——基因共表达网络分析

    Gene co-expression(基因共表达)是一种使用大量基因表达数据构建基因间的相关性,从而挖掘基因功能的一类分析方法. 在很多情况下,有着相似行为/变化的物质,会存在着一定的联系.在生物中, ...

  2. 基因共表达网络分析java,RNA-seq数据的基因共表达网络分析

    目录 1 背景 BackgroundTypes of biological networks Motivation for using co-expression networks Network i ...

  3. WGCNA加权基因共表达网络分析(1)简介、原理

    WGCNA简介 WGCNA(Weighted Gene Co-Expression Network Analysis, 加权基因共表达网络分析),鉴定表达模式相似的基因集合(module),解析基因集 ...

  4. Gene co-expression analysis for functional classification and gene–disease predictions 基因共表达分析的功能分类

    Gene co-expression analysis for functional classification and gene–disease predictions 基因共表达分析的功能分类和 ...

  5. 基因共表达聚类分析及可视化

    欢迎关注天下博客:http://blog.genesino.com/2017/11/gene-cluster/ 共表达基因的寻找是转录组分析的一个部分,样品多可以使用WGCNA,样品少可直接通过聚类分 ...

  6. 构建基因共表达网络鉴定CD8 T细胞浸润相关生物标志物在肾透明细胞癌中的作用

    构建基因共表达网络鉴定CD8 T细胞浸润相关生物标志物在肾透明细胞癌中的作用 文章目录 构建基因共表达网络鉴定CD8 T细胞浸润相关生物标志物在肾透明细胞癌中的作用 文献信息 背景和目的 实验流程 方 ...

  7. IF: 4+ 通过共表达网络鉴定急性心肌梗死患者血小板转录组关键基因模块和通路

    点击关注,桓峰基因 桓峰基因 生物信息分析,SCI文章撰写及生物信息基础知识学习:R语言学习,perl基础编程,linux系统命令,Python遇见更好的你 81篇原创内容 公众号 这期分享一篇贼简单 ...

  8. Co-LncRNA:lncRNA与蛋白编码基因的共表达网络数据库

    欢迎关注"生信修炼手册"! 有多项研究表明lncRNA与众多生物学过程,复杂疾病相关,为了进一步探究lncRNA在这些生命活动中的具体作用,我们需要对lncRNA的功能进行分析. ...

  9. 基因共表达网络分析java,好用的基因共表达网络分析工具

    原标题:好用的基因共表达网络分析工具 基因共表达网络(GeneCo-expreesion Network)是用来展现基因间相互作用关系的一种手段,是基于基因间表达数据而构建调控网络图.今天推荐一个查询 ...

最新文章

  1. 为什么异步Python比同步Python快?
  2. 响应式开发一招致胜 学习视频 分享
  3. python【蓝桥杯vip练习题库】ALGO-91 Anagrams问题
  4. 对字符串数组排序,使所有变位词都相邻(C++)
  5. 有参组装新转录本cufflinks_转录本组装软件StringTie的使用说明
  6. 小程序自定义tabbar占位问题
  7. svnserver配置文件详解
  8. IDEA的类注释模板
  9. JS设计模式之工厂模式
  10. 安装IDEA 并创建快捷方式
  11. 5 月最大的 GameFi 崩溃受害者能否在熊市中生存?| May Monthly Report
  12. 现在大多数论文存在的弊病——可重复性
  13. Users用户类默认值及各属性可能的值
  14. 执行董事和董事长有什么区别
  15. xp 无法关闭计算机,电脑xp系统关不了机,一直显示在正在关机为什么 除了重装,还能怎么办...
  16. 数仓4.0(三)------数据仓库系统(续)
  17. Windows Shell编程-第七章.侵入Shell
  18. ISTQB TM考点总结之第三章
  19. overleaf使用指南以及最基本LaTeX语法回顾
  20. html em加粗,HTML5 :b/strong加粗,i/em倾斜区别

热门文章

  1. ★★ 人 间 爱 ★★
  2. rpx px 的区别
  3. 是谁剥夺了我们的智慧与能力(发泄一下)
  4. 【180929】仙剑卡牌游戏源码
  5. [Unity3D·CSV篇]01.CSV新手级读取
  6. 密码学C语言函数库——Miracl库快速上手中文指南(VC)
  7. 【总编观察】CES:IT大变革,软件的新平台与新机遇
  8. 从Offer收割机到延毕到失业再到大厂996,兵荒马乱的2022年末总结
  9. python 《我不是药神》豆瓣影评爬取
  10. SpringBoot 2.x 优雅解决分布式限流