分子生态网络分析(MENA)构建微生物网络示例续前文“微生物共发生网络”,本篇继续简介分子生态网络分析(Molecular Ecological Network Analysis,MENA)方法。MENA通过基于随机矩阵理论(RMT)构网络,与其它网络构建方法相比,该方法的特别之处在于网络是自动定义的,并且对噪声具有鲁棒性,从而为与高通量宏基因组学数据相关的问题提供了出色的解决方案(Deng et al, 2012)。基于RMT的分子生态网络为阐明微生物群落中的物种共发生模式及其对环境变化的响应分析提供了强大的工具。除了应用于微生物网络外,还可用于识别转录组网络、代谢组网络等,进行基因-功能关系预测。MENA的整个过程可以分为两个阶段。第一阶段是网络构建,包括四个主要步骤:数据收集、数据转换/标准化、相似性矩阵计算以及通过基于RMT的方法确定邻接矩阵。其中基于RMT的步骤是最关键的,一旦定义了邻接矩阵,就可以绘制无向网络图。MENA的第二阶段是网络分析,它提供了网络拓扑特征计算、模块检测、基于模块的特征基因分析等。这些方法对于揭示网络的整体结构以及识别关键成员非常重要。此外,MENA还提供了一些高级分析方法,如建立微生物网络特性与环境特征的关联,可以在不同条件下比较网络差异,分析环境如何影响生态群落结构和交互等。

本篇通过MENA构建微生物共发生网络的一个示例,展示其使用方法。

包含两部分,一是网络构建(详细展示其流程),二是网络分析(简单展示概要)。

MENA构建微生物共发生网络

首先登陆用户,进入主网站界面(http://ieg4.rccc.ou.edu/mena/)。

1、准备数据

点击“Tutorial and example dataset”可查看MENA的官方介绍,并可获取示例数据。如果您不熟悉MENA工作原理,建议首先通过下载该界面的资料简单了解下。

网站中提供了示例数据,以制表符为分隔的OTU丰度表,接下来用它来展示过程。

示例数据应该是事先作过某种转化,咱们暂且无需在意它是怎样转化的。上传自己的数据时,原始的未作转化的OTU表肯定也是可以的。

但是需要注意几点:

(1)勿使用纯数字(例如10)作为数据集名称;

(2)在样品名称、OTU名称或数据集名称中,勿使用任何空格或特殊符号(下划线“ _”除外);

(3)将所有“零值”保留为空白;

(4)最小观测值不能小于1,因此不要使用相对丰度表;允许进行一些不会改变相关系数的变换,例如将整个矩阵乘以一个常数。

2、上传数据

点击“Upload your dataset”上传OTU表。

该界面中红字部分即为上述提到的注意事项,对上传数据的基本要求。蓝字部分是对可能的提交错误的解释,如果出现错误,请首先检查格式是否有误。

3、构建RMT

点击“Construct the network”,选择刚刚上传的数据集。

想吐槽一下,网站为何不提供删除选项啊,那些已经没用的数据看着好碍眼啊……

选择待构建网络的数据集后,跳转新界面。

可在此界面预处理数据(尽管也可以在数据上传前提前处理),以及选择构建网络所需的参数项,构建RMT。

4、获得最终网络

期间可以溜达活动一下,等待程序运行完成。

在主界面点击“Search datasets and networks”,可查看当前的工作状态,Status显示为“done”时就可以了。

点击刚才的运行结果,在新界面中,选择一个合适的cutoff值作为相似性矩阵来构建网络。

通常而言,cutoff选择的阈值越高,网络规模(节点数和边数)越小,拟合的R2也高。

但p值是个不能被忽视的问题,需要注意的是卡方检验的p值尽量选择p>0.05的值(例如该文献方法中提到:https://www.nature.com/articles/ismej2015235)。对于网站默认给出的阈值,如果您细心留意过,会发现它根据cutoff的数值由低往高依次判断,将第一个出现p>0.05的cutoff值作为默认阈值。如果没有p>0.05出现,则将指定最大p值的那个。

如果您有多个网络需要比较,请让它们保持在同一(或尽可能接近的)cutoff值下,比较才有意义。但是,由于很难保证相似cutoff值对应的p值都大于0.05,实际使用时会发现很难受……

本示例按默认提供的阈值来吧,尽管p<0.05(因为没有更好的选择了,实际分析中可以重新调试构建网络的参数,看是否能优化网络),但作为示例请允许我继续。随后,将显示最终网络的节点数、边数、平均连通度、平均路径长度、拟合的R2

对这几个网络拓扑特征的描述可参考该文,可通过它们初步评估网络规模、凝聚度等,在多种可选方案时可用于比较。

MENA提供的在线网络分析方法

到上一步,无啥大问题的话,就获得最终的网络了。

后续的工作,就是网络统计与可视化。可以选择将网络导出(方法见下文),使用其它工具(如R,Cytoscape等)编辑;MENA网站也提供了一些常见的统计方法。

返回主界面点击“Analyze the networks”,可对网络执行以下操作。

点击对应的选项,选择刚才构建好的网络后,统计或可视化就可以了。

这部分很容易操作了,不再展示细节,简单举一些示例。

网络基本拓扑特征计算

例如,计算了网络全局属性和节点特征,可在界面的下方下载结果表格。

对于重要的拓扑特征或属性,我在前文做过概念描述,可见“网络拓扑结构-网络图的凝聚性特征”、“网络拓扑结构-节点和边特征”。

点击“Module Separation and modularity calculation”执行网路模块识别,包含识别的网络中模块数量、网络模块度、节点的模块内连通度(Zi)和模块间连通度(Pi)特征等,在该界面下方可下载结果表格。

网络可视化

MENA提供的网络简图,点击“Simple network plot”查看。

自定义的可视化需要将网络文件导出到本地,使用可视化工具(如Cytoscape)等编辑,点击“Output for the Cytoscape software visualization”获取网络文件。当然除了使用Cytoscape,节点属性和边属性列表也能用作其它网络分析工具如Gephi、R的igraph包等的输入。

这些其它的网络可视化工具还请自行了解学习了,本篇不涉及它们。例如下方展示了Cytoscape调整后的某个网络图示例(非上述示例,上述示例我懒得调,找其它图代替下),节点按模块聚为不同的簇,节点颜色表示OTU所属的门分类水平,边的颜色代表正/负相关性,关键的节点展示在每个簇的中心。

其它的统计分析示例

例如,微生物共发生网络的度通常符合幂律分布。MENA提供了对幂律分布的拟合方法,点击“Fit three power-law models”选择网络后自动出结果。

再例如,随机网络常用于评估网络“显著性”。通过比较随机网络与经验网络的拓扑特征,如果发现经验网络的凝聚性显著优于随机网络,则表明经验网络中识别的节点关系是显著的、合理的、有效的。

如下所示,构建了100个随机网络,并计算了它们的拓扑特征。相比之下,经验网络的凝聚性普遍高于随机网络,证明经验网络中非随机的相互作用占主导,结合数据就表明了网络中识别的微生物间的关系(或者基因间关系)是显著相关的。

参考文献

Deng Y, Jiang Y, Yang Y, et al. Molecular ecological network analyses. BMC Bioinformatics, 2012, 13(1): 113-113.友情链接

相关性和网络分析基础

Pearson、Spearman、Kendall、Polychoric、Polyserial相关系数简介及R计算

网络分析概述之网络基础简介

网络拓扑结构-节点和边特征的简介和R计算

网络拓扑结构-网络图的凝聚性特征和R计算

微生物关联网络推断及一个简单的相关网络示例

CoNet的关联网络推断过程演示

微生物共发生网络中节点度的幂律分布和在R中拟合

网络模块内连通度(Zi)和模块间连通度(Pi)及在R中计算

降维分析

非约束排序(描述性的探索性分析):

主成分分析(PCA):主成分分析(PCA)    同时含数值和分类变量的PCA

模糊主成分分析(FPCA)

对应分析(CA):对应分析(CA)    去趋势对应分析(DCA)

多重对应分析(MCA)    模糊对应分析(FCA)

主坐标分析(PCoA):主坐标分析(PCoA)

非度量多维标度分析(NMDS):非度量多维标度分析(NMDS)

非约束排序中被动添加解释变量:被动添加解释变量

约束排序(将解释变量通过回归方程拟合响应变量的统计模型):

冗余分析(RDA):冗余分析(RDA)    基于距离的冗余分析(db-RDA)

主响应曲线(PRC)

典范对应分析(CCA):典范对应分析(CCA)

RDA、CCA的R2校正及约束轴的显著性检验

RDA、CCA的解释变量选择

RDA、CCA的变差分解(VAP)

对称分析(这类方法意在描述两个或多个矩阵之间的相关性):

典范相关分析(CCorA)

协惯量分析(CoIA)    多重协惯量分析(MCoIA)

协对应分析(CoCA)

RLQ和第四角分析

多元因子分析(MFA)

监督降维(带监督的降维方法,常用于分类):

判别分析(DA)

聚类和分类

层次聚类(无监督,描述性的探索性分析):

层次聚合:层次聚合分类    层次聚类结果的比较和评估

层次分划:双向指示种分析(TWINSPAN)

非层次聚类(无监督,描述性的探索性分析):

划分聚类:k均值划分(k-means)    围绕中心点划分(PAM)

模糊聚类:模糊c均值聚类(FCM)

避免不存在的类

潜变量分类(无监督,潜变量也可视为某种意义上的“降维”):

潜类别分析(LCA)    潜剖面分析(LPA)约束聚类(无监督,将解释变量通过回归方程“约束”响应变量的模型):多元回归树

监督分类(通过已知先验分组构建分类器模型):

决策树    随机森林分类

支持向量机分类

判别分析(DA):线性判别分析(LDA)    二次判别分析(QDA)

rda冗余分析步骤_分子生态网络分析(MENA)构建微生物网络示例相关推荐

  1. rda冗余分析步骤_群落分析的典范对应分析(CCA)概述

    典范对应分析(CCA)与去趋势典范对应分析(DCCA)概述典范对应分析(canonical correspondence analysis,CCA)是单峰约束排序方法,是对应分析(CA)与多元回归的结 ...

  2. rda冗余分析步骤_数量生态学笔记||冗余分析(RDA)

    上一节数量生态学笔记||冗余分析(RDA)概述中,我们回顾了RDA的计算过程,不管这个过程我们有没有理解透彻,我希望你能知道的是:RDA是响应变量矩阵与解释变量之间多元多重线性回归的拟合值矩阵的PCA ...

  3. rda冗余分析步骤_文献综述,步骤与问题!

    这是 社科学术圈 推送的第1614篇文章 文献综述也称研究综述,是指在全面掌握.分析某一学术问题(或研究领域)相关文献的基础上,对该学术问题(或研究领域)在一定时期内已有研究成果.存在问题进行分析.归 ...

  4. rda冗余分析步骤_FEMS Microbiol Ecol |微生物生态学中的多变量分析

    [论文题目]Multivariate analyses in microbial ecology [期刊名称]FEMS Microbiology Ecology, 2007, 62:142-160 [ ...

  5. canoco5冗余分析步骤_基因富集分析|理解

    Gene Set Enrichment Analysis 基因富集分析 哈罗大家好!ヾ(≧▽≦*)o 年初在和老板研究 Identifying Cell Subpopulations 有关的课题,发现 ...

  6. canoco5冗余分析步骤_打造高性能的大数据分析平台

    大数据时代,大数据的应用与挖掘,大数据的分析和决策,大数据在经济社会的运行轨道上发挥着愈来愈重要的作用.对于大数据分析,现在好多互联网金融公司和传统的商业银行.证券基金公司都非常看重.个个都想在大数据 ...

  7. arcgis交通可达性分析步骤_【规划广角】街道慢行品质的多维度评价与导控策略——基于多源城市数据的整合分析...

    欢迎点击以上蓝色字体 关注规划师杂志 作者苏州规划设计研究院交通所所长.同济大学建筑与城市规划学院博士研究生樊钧,同济大学建筑与城市规划学院硕士研究生唐皓明,同济大学建筑与城市规划学院助理教授.硕士生 ...

  8. R语言绘图实战:RDA冗余分析

    #载入vegan包 library(vegan) #读取"样本-物种"文件 sp <- read.table(file=file.choose(),sep="\t& ...

  9. 核磁谱图分析步骤_质谱仪、红外光谱、核磁共振氢谱

    问题 质谱仪.红外光谱.核磁共振氢谱,哪种能判断同分异构体? 观点1:有时候都能,有时候都不能. 观点2:质谱仪测相对分子质量的,肯定不能了,另外两个要看具体情况,有时候单独可以,最好配合使用. 观点 ...

最新文章

  1. 支持手机版网站的We7CMS
  2. 推荐一些软件,平时工作中可能会用到【不断更新】
  3. 【翻译】为什么 goroutine 的栈内存无穷大?
  4. IT行业: 嵌入式工程师的进阶之路
  5. python解释器哪一年_Python即Python解释器的发展史
  6. Mobile DevOps 之 Proxmox 实现节流提效
  7. QT的QDesignerCustomWidgetInterface类的使用
  8. CodeForces - 1547G How Many Paths?(强联通缩点+拓扑)
  9. mybatis mysql usegeneratedkeys_mybatis中useGeneratedKeys用法--插入数据库后获取主键值
  10. java定义一个course类,求指教定义一个学生类 ,大学生小学生,定义一个选课接口...
  11. Ms Sql Server 2005的数据库快照功能使用实践
  12. Hive ETL 任务调优(参数篇)
  13. 创造自己的专属免费网盘:Nextcloud
  14. 强人Hibernate文档笔记(下)
  15. python如何执行代码漏洞_在漏洞利用Python代码真的很爽
  16. Linux之vim编辑器的使用
  17. FTP局域网内文件共享
  18. 机器学习基石 作业二
  19. LabVIEW网络数据传输远程控制编程与验证测试
  20. 仿迅雷播放器教程 -- 提取exe资源(12)

热门文章

  1. 什么是B/S模式?什么是C/S模式?
  2. python使用tqdm实现程序运行进度条
  3. sql服务器登录名为电脑名如何修改,如何恢复数据库的账号 登录名/用户名等
  4. Genomes correction and assembling - Present methods and tools
  5. BLAST数据库搜索
  6. mysql主从配置流程
  7. 我看过的Java方面的好文章
  8. centos 7安装 navicat
  9. mysql两列查询结果列拼接一个表输出_sql select语句,查询出两列结果拼接在一起...
  10. php当前日期的时间戳,php – 获取当前的ISO8601日期/时间戳