Loading...
墨滴

fafu生信小蘑菇

2021/05/05  阅读:48  主题:橙心

《数量生态学:R语言的应用》第二版第三章--R模式

《数量生态学:R语言的应用》第二版第三章-关联测度与矩阵------R模式

之前我们了解了Q模式,也就是比较对象对,换句话说我们我们学习了各式各样的距离。

今天带来的是比较变量对的分析,也就是R模式。

1.Q模式思维导图

首先对昨天的Q模式进行梳理一下,做了一个思维导图

Q模式
Q模式

2 .R模式:计算变量之间的依赖矩阵

在R模式下,比较变量必须使用“相关“类型的系数,这类系数包括用于定量和等级数据的Pearson相关系数非参数相关系数(Spearman秩相关、Kendall秩相关)定性变量的列联表统计分析(卡方统计和推导模式)。对于有-无数据,二元数据(例如Jaccard相异系数、Sφrensen相异系数、Ochiai相异系数)也可以用于比较物种(R模式)。

2.1 R模式:物种多度数据

同参数与非参数相关系数一样,协方差也经常用来比较物种在空间或时间上的分布差异。需要注意的是,双零同其他相同的多度值一样,会增加物种之间的相关性。为了准确计算物种的关联,在计算参数或非参数物种间的相关系数之前。运用一些变量转换技术,避免每个样方总多度的影响。某些物种关联的概念,只用正的协方差或者正的相关系数去确认协同变化物种之间的关联。

  • 相关系数

  • 卡方距离

2.1.1 先加载包和数据

# 先加载包和数据

setwd("E:/Rstudio_working/lai jian shan/DATA/Data")
#加载包、函数和数据
library(ade4)
library(adespatial)
library(vegan)#可以先加载ade4再加载vegan,不然可能会有一些问题
library(gclus)
library(cluster)
library(FD)

#加载本章后面部分将要用到的函数
source("coldiss.R")
source("panelutils.R")

#导入Doubs数据
load("Doubs.Rdata")
#剔除无物种数据的样方8
spe <- spe[-8,]
env <- env[-8,]
spa <- spa[-8,]

2.1.2演示如何计算并可视化27个鱼类物种的R模式卡方相异矩阵

# 物种多度矩阵的转置矩阵
spe.t <- t(spe) #用t函数转置矩阵
# 先卡方转化后计算欧氏距离
spe.t.chi <- decostand(spe.t, "chi.square")#卡方转化
spe.t.D16 <- dist(spe.t.chi) 
coldiss(spe.t.D16, diag=TRUE)
spe原始数据
spe原始数据
T转置后数据
T转置后数据
卡方转化
卡方转化
R模式卡方相异矩阵图
R模式卡方相异矩阵图

2.2 R模式:物种有-无数据

对于二元物种数据,Jaccard相异系数、Sφrensen相异系数、Ochiai相异系数,同样可以用于R模式。

#鱼类有-无数据的Jaccard指数
spe.t.S7 <- vegdist(spe.t, "jaccard",binary=TRUE)
coldiss(spe.t.S7, diag=TRUE)
#将右边的图与之前获得的卡方距离图进行比较,物种组是否一致?
鱼类有-无数据的Jaccard指数
鱼类有-无数据的Jaccard指数

2.3 R模式:定量和序数数据(除物种多度外的数据)

协方差和Pearson相关系数都可以用于比较相同量纲的定量变量,但是,它们都是线性模型,当变量之间的单调但非线性关系时,效果将变得不好。对于不同量纲的变量,Pearson相关系数γ比协方差更合适,因为γ实际上是标准化后的协方差

序数变量对或单调但非线性定量关系定量变量对的比较可以采用秩相关系数(Spearman相关或Kendall相关)

以上总结: R 模式: 定量和序数数据

注意:这里cor()函数(stats包)要求输入未转置矩阵

# 环境变量之间的Pearson线性相关系数r
env.pearson <- cor(env) # 默认 method = "pearson"
round(env.pearson, 2)
round(env.pearson, 2)
round(env.pearson, 2)
# 在绘图之前重新排位变量
env.o <- order.single(env.pearson)
# pairs()是绘制双变量散点图矩阵函数
#panelutils.R给pairs()函数提供定义参数的函数
pairs(
  env[,env.o], 
  lower.panel=panel.smooth, 
  upper.panel=panel.cor,
  diag.panel=panel.hist,
  main="Pearson 相关矩阵")
#环境变量两两之间关系的多面板展示,同时也显示Pearson相关系数γ和显著性。
双变量散点图
双变量散点图

使用Kendall秩相关τ比较环境变量

# 环境变量之间的Kendall秩相关
#黑白图
env.ken <- cor(env, method="kendall")
env.o <- order.single(env.ken)
pairs(
    env[,env.o],
    lower.panel=panel.smoothb, 
    upper.panel=panel.cor,
    no.col=TRUE,
    method="kendall"
    diag.panel=panel.hist, 
    main="Kendall 相关矩阵")
#通过这些双变量关系图,你更倾向于用Kendall秩相关还是Pearson线性相关?
环境变量之间的Kendall秩相关
环境变量之间的Kendall秩相关

2.4 二模式二元数据除物种多度Y的数据。

比较成对的二元变量,最简单的方式是计算Pearson相关系数,此时Pearson相关系数γ也被称为点相关系数,点相关系数与没有矫正的的2×2列联表卡方统计值有直接关系。

2.5 小结

下图是R程序包内常用的计算Q模式的距离函数和相异系数函数。 左侧一列是专为定量数据设计的函数,如果用于有-无的数据,将与右侧一列专为有-无数据设计的函数所获得的结果相同

image-20210505221102114
image-20210505221102114
image-20210505221112531
image-20210505221112531

《数量生态学:R语言的应用》第二版第三章--R模式就结束了,是不是比Q模式东西少很多,多复习一下吧!!!一起加油

如有不足或错误之处,请批评指正。 有什么不明白的也欢迎留言讨论。

欢迎关注微信公众号:fafu 生信 小蘑菇

感谢你的阅读!!!你的点赞关注转发是对我最大的鼓励。

fafu生信小蘑菇

2021/05/05  阅读:48  主题:橙心

作者介绍

fafu生信小蘑菇