排序是微生物生态学中分析微生物格局常用方法,包括非约束排序和约束排序。非约束排序可以很直观地观察各样点或处理间微生物群落结构的变化情况,常用的有基于各种生态距离(beta多样性,最常用的Bray-Curtis距离、Jaccard距离等)的NMDS、PCoA和t-SNE降维,基于卡方距离的对应分析(CA,correspondence analysis )和基于欧氏距离的PCA分析。约束排序可以探索环境因子对微生物群落结构的影响常用的有:RDA、CCA或基于距离的RDA(db-RDA)。以上这些方法我们称之为基于距离的排序,这些方法历史悠久,都诞生在上个世纪,在生态学中得到了长时间的检验,具体的内容可以参考Legendre的《R在数量生态学中的应用》一书。这里我们主要介绍一种新的排序方法——基于模型的排序

1. 基于模型的排序与基于距离的排序相比有哪些优缺点?

两者的优缺点可以笼统地概括为下面的表格:

方法 优点 缺点
基于距离的排序 运行速度快、历史悠久 生态学意义提炼有限
基于模型的排序 可获得更多生态学意义解释 运行速度慢

下面具体介绍基于模型的方法的优点,主要表现在以下5个方面:

  1. 对mean-variance关系进行了考虑,从而区分trends in location (the natural variation)和changes in dispersion (the associated mean–variance relationships);
  2. 检验模型与我们假设的关系,并比较不同的模型;
  3. 确定系数的不确定性;
  4. 用于预测,可用该模型生成新的数据;
  5. 考虑空间和时间造成的自相关性;

看到这五点,你可能看蒙了吧,确实不好理解,建议参考英文原文中的introduction部分:

  • gllvm: Fast analysis of multivariate abundance data with generalized linear latent variable models in r
  • Fast model-based ordination with copulas
  • Distance-based multivariate analyses confound
    location and dispersion effects
      
2. 基于模型的方法目前有哪些实现方法?

  这里推荐三个比较新的或者比较快的或者比较全面的方法,并在接下来的部分用gllvm的方法进行约束排序,看看其中的优势。

  • gllvm: Fast analysis of multivariate abundance data with generalized linear latent variable models in r
  • Fast model-based ordination with copulas
  • A new joint species distribution model for faster and more accurate inference of species associations from big community data
  • How to make more out of community data? A conceptual framework and its implementation as models and software
3. 如何利用基于模型的方法进行约束排序?

  基于模型的约束排序的难点并不在于R代码的编写,而是如何将自己的假设和想要验证的问题用模型的形式表达出来,并进行解释。这里以OTUs对环境因子pH的响应作为例子,pH在很多生态系统中都被证明是影响群落结构的主要影响因子,OTUs对环境因子如pH的相应有两种模式——线性相应和单峰响应。线性响应是指OTU随研究范围内pH的增加单调地增加或减少,单峰响应是指OTU随研究范围内pH的增加呈现先增加后减少的趋势,那么如何区别这两者呢?基于模型的约束排序可以实现这一目的。下面是R代码:

nifhotu_norep <- read.delim("~/Desktop/htl_data_analysis/R code/Effect of biological replicates on RDA/nifhotu_no_reps.txt", row.names=1)
env_norep <- read.delim("~/Desktop/htl_data_analysis/R code/Effect of biological replicates on RDA/env_no_reps.txt", row.names=1)library(gllvm)
Y <- nifhotu_norep
Y <- Y[,colSums(Y>0)/nrow(Y) > 0.8]
summary(rowSums(Y>0))
X <- env_norep
X <- scale(X)
#设置了两个约束潜变量:num.lv.c = 2
CGLLVM <- gllvm(Y,X=X,family="negative.binomial", num.lv.c = 2)
summary(CGLLVM)
ordiplot(CGLLVM, biplot=FALSE)
#设置了两个约束潜变量:num.lv.c = 2
QCGLLVM <- gllvm(Y,X=X,family="negative.binomial", num.lv.c = 2,quadratic = TRUE)
summary(QCGLLVM)
ordiplot(QCGLLVM, biplot=FALSE)


此处我们可以看到考虑到二次效应的模型QGLLVM比仅考虑一次效应模型的AIC值更低,因此QGLLVM更优。然后我们再看LV1与LV2的标准偏差,我们可以看到LV1的变异较大为0.4088,LV2仅为0.0501。因此与LV1相比,我们可以忽略LV2。

且与其他变量相比pH对LV1的影响最大:

我们提取OTUs对潜变量LV1的二次响应系数与标准差,判断OTUs对潜变量LV1的响应特征——线性or单峰?

theta <- as.data.frame(QCGLLVM$params$theta)
sigma <- as.data.frame(QCGLLVM$sd$theta)
#theta$`CLV1^2` + 2*sigma$`CLV1^2`>0
#说明二次方的系数为0在两倍的标准差区间内,
#因此接受“二次方的系数为0”这一零假设。
#这样的OTUs为线性响应OTUs,这里称为lr_otu(linear responsing OTUs);
#否则为单峰响应OTUs,称为um_otu(unimodal OTUs)
lr_otu <- rownames(theta)[theta$`CLV1^2` + 2*sigma$`CLV1^2`>0]
um_otu <- rownames(theta)[theta$`CLV1^2` + 2*sigma$`CLV1^2`<0]

通过上面的分析我们发现pH是影响群落结构变异的主要环境因子(这一点并不新鲜),同时我们根据OTUs对pH响应特征进行了划分,得到了单峰响应OTUs,um_otu线性响应OTUs,lr_otu。然后再根据这样的划分进行进一步的分析,例如每个样地不同响应特征OTUs的比例、其遗传发育特征等等。

  难道就这?基于模型的方法还可以用于计算residue co-occurrence network,将在下一期的博客中介绍哈。

测试数据及R代码可参考如下资源:

  • CSDN:基于模型的约束排序,并探究OTUs对pH的响应特征——单峰or线性?
  • 面包多:基于模型的约束排序,并探究OTUs对pH的响应特征——单峰or线性?

基于模型的约束排序,并探究OTUs对pH的响应特征——单峰or线性?相关推荐

  1. list对oracle结果集排序了_文章推荐系统系列之基于 FTRL模型的在线排序

    文章推荐系统系列: 1.推荐流程设计 2.同步业务数据 3.收集用户行为数据 4.构建离线文章画像 5.计算文章相似度 6.构建离线用户画像 7.构建离线用户和文章特征 8.基于模型的离线召回 9.基 ...

  2. 基于模型与不基于模型的深度增强学习_CVPR2018: 基于时空模型无监督迁移学习的行人重识别...

    Unsupervised Cross-dataset Person Re-identification by Transfer Learning of Spatial-Temporal Pattern ...

  3. 特征筛选(2)——基于模型的特征筛选方法

    [Kaggle]Telco Customer Churn 电信用户流失预测案例 第三部分导读   在案例的第二部分中,我们详细介绍了常用特征转化方法,其中有些是模型训练之必须,如自然数编码.独热编码, ...

  4. 强化学习70年演进:从精确动态规划到基于模型

    作者 | Nathan Lambert 译者 | 泓礼 编辑 | 夕颜 出品 | AI科技大本营(ID: rgznai100) [导读]这是一份帮你了解强化学习算法本质的资源,无需浏览大量文档,没有一 ...

  5. PlanarSLAM:基于结构化约束的视觉SLAM

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 引言 在我们所熟知经典SLAM系统,以ORB-SLAM为代表的通过特征点法在相机位姿估计方面有很好的表 ...

  6. AI+医疗:基于模型的医疗应用大规模分析 | 腾讯AI Lab学术论坛演讲

    来源:腾讯AI实验室 摘要:3月15日,腾讯AI Lab第二届学术论坛在深圳举行,聚焦人工智能在医疗.游戏.多媒体内容.人机交互等四大领域的跨界研究与应用. 3月15日,腾讯AI Lab第二届学术论坛 ...

  7. 推荐系统笔记:基于模型的协同过滤

    1 介绍 基于邻域的协同过滤方法可以看作是机器学习中常用的k-最近邻分类器KNN的泛化. 这些方法是基于实例的方法,因此,除了可选的预处理阶段之外,没有专门为预测预先创建模型. 推荐系统笔记:Intr ...

  8. CVPR 2021 | 澳洲国立大学提出基于模型的图像风格迁移

    ©作者|侯云钟 学校|澳洲国立大学博士生 研究方向|计算机视觉 本文从另外一个角度解读,澳洲国立大学郑良老师实验室 CVPR 2021 新工作.一般而言,我们需要同时利用两张图片完成图像的风格迁移(s ...

  9. Apollo进阶课程㉘丨Apollo控制技术详解——基于模型的控制方法

    原文链接:进阶课程㉘丨Apollo控制技术详解--基于模型的控制方法 PID控制是一个在工业控制应用中常见的反馈回路部件,由比例单元P.积分单元I和微分单元D组成.PID控制的基础是比例控制:积分控制 ...

  10. 《中国人工智能学会通讯》——11.64 基于成对约束的属性特征选择

    11.64 基于成对约束的属性特征选择 属性学习常面临低层特征维度特别高的问题.例如,在 Animals With Attributes 数据集中,每张图片对应 6 种类型的特征,即 2 688 维的 ...

最新文章

  1. 中国虚拟电厂运行状况及竞争力分析报告2022-2028年版
  2. PAT甲级题目翻译+答案 AcWing(动态规划)
  3. build.gradle里dependencies标签页的实现原理
  4. csp真题202112-1 序列查询 (100分)
  5. 第一次更名为OpenInfra的“她”,给我们带来了哪些惊喜?| 技术头条
  6. -bash:fork:Resource temporarily unavailable
  7. # 定义四边形_对特殊平行四边形核心梳理,拓展提升思维
  8. 【重识 HTML + CSS】网页基础知识、基本 HTML 标签
  9. 2021年SWPUACM暑假集训day2并查集算法
  10. java常见轮询算法
  11. 【大学物理·早期量子论和量子力学基础】一维定态薛定谔方程的应用
  12. Python与MySQL交互——简易用户注册登录
  13. 【机器学习】【特征选择】4.嵌入法Embedded
  14. MATLAB中的eig函数
  15. Ajax洗洁精的特性,洗涤剂中常用表面活性剂的特点
  16. “下一个江小白”靠什么成就?
  17. 使用 mysql_use_result 还是使用 mysql_store_result
  18. 部署Kubernetes(k8s)时,为什么要关闭swap、selinux、firewall 防火墙?
  19. 牵手网红城市重庆 鲲鹏生态不止“打卡”这么简单
  20. vmos框架_vmos魔改共存版自带roor框架下载-vmos魔改版去广告去更新v1.0.63极简版_新绿资源网...

热门文章

  1. 抖音如何充钱上热门 抖音怎么上热门方法
  2. 网络发现不了其他计算机,win10网络发现不了其他电脑怎么办_win10网络里找不到其他电脑如何处理...
  3. axio.js封装和环境配置
  4. c语言函数实现数组输入输出
  5. 2020_CIKM_DREAM_ A Dynamic Relation-Aware Model for social recommendation
  6. 浅层神经网络和深层神经网络介绍
  7. 心率监测仪全国产化电子元件推荐方案
  8. 【运筹学】线性规划数学模型 ( 线性规划三要素 | 一般形式 | 标准形式 | 标准形式转化 | 可行解 | 最优解 | 基 | 基向量 | 基变量 | 非基变量 ) ★★
  9. 电商数据分析常用的四种方法,数据分析必备
  10. 【C语言】案例五十一 员工档案管理系统