1、基本介绍
vegan
包中的vegdist()
函数是用于计算生态学研究中样本间距离或相异性的函数。该函数主要用于计算样本之间的距离矩阵,以便进行后续的聚类分析(Cluster Analysis)、非参数多样性测试(Non-parametric Diversity Testing)、主坐标分析(PCoA分析)等。
- 目的:计算样本之间的距离矩阵,用于比较它们之间的相似性或差异性。
- 输入:通常是一个数据矩阵,其中行代表样本,列代表各个特征或物种的相对丰度。
- 输出:距离矩阵,其中每个元素表示两个样本之间的距离或相异性。
2、基本语法及参数解释
vegdist(x, method="bray", binary=FALSE, diag=FALSE, upper=FALSE,
na.rm = FALSE, ...)
参数解释:
-
x:数据矩阵,其中行代表样本,列代表各个特征或物种的相对丰度。
-
method:距离计算方法。这是一个字符串参数,用于指定计算距离的方法。常见的方法包括:
"manhattan"
,"euclidean"
,"canberra"
,"clark"
,"bray"
,"kulczynski"
,"jaccard"
,"gower"
,"altGower"
,"morisita"
,"horn"
,"mountford"
,"raup"
,"binomial"
,"chao"
,"cao"
,"mahalanobis"
,"chisq"
,"chord"
,"hellinger"
,"aitchison"
, 或"robust.aitchison"
-
binary:逻辑值,用于指定是否计算二元指数。如果为TRUE,则使用二元数据计算距离;如果为FALSE,则使用定量数据计算距离。默认值为FALSE。
-
diag:逻辑值,用于指定是否计算对角线上的距离。如果为TRUE,则对角线上的距离将被计算并返回到结果中;如果为FALSE,则对角线上的距离将被忽略。默认值为FALSE。
-
upper:逻辑值,用于指定是否返回距离矩阵的上三角部分。如果为TRUE,则返回距离矩阵的上三角部分(不包括对角线);如果为FALSE,则返回完整的距离矩阵。默认值为FALSE。
-
na.rm:逻辑值,用于指定是否删除包含NA值的行或列。如果为TRUE,则在计算距离之前将删除包含NA值的行或列;如果为FALSE,则保留包含NA值的行或列。默认值为FALSE。
-
...:其他参数,用于传递给底层的距离计算函数。可以根据具体需要传递其他参数。
3、举例
library(vegan)
# 计算欧氏距离
dist_matrix <- vegdist(data_matrix, method = "euclidean")
# 计算Bray-Curtis距离
dist_matrix <- vegdist(data_matrix, method = "bray")
# 计算Jaccard距离
dist_matrix <- vegdist(data_matrix, method = "jaccard")
# 其他距离方法参考文档以获得更多选项
注:后面几个参数不常用,data_matrix和 method为必填项。
注意事项:
- 使用前确保已经安装并加载了
vegan
包。 - 不同的距离方法适用于不同的数据类型和分析目的,选择适合你研究的距离方法。
- 可以通过查看函数文档或使用
?vegdist
命令来获取更多信息和参数选项。
4、method部分补充
这些是在生态学和生物统计学中常用的不同距离或相似性指数,用于衡量样本或群落之间的差异或相似性。以下是对这些指数的简要解释:
1.Manhattan Distance:曼哈顿距离,也称为城市街区距离,是两个点之间的绝对距离。
2.Euclidean Distance:欧氏距离,是两个点之间的直线距离。
3.Canberra Distance:坎贝拉距离,用于衡量两个样本之间的相似性,特别适用于高维数据。
4.Clark Distance:克拉克距离,一种特定的相似性指数,用于衡量样本之间的差异。
5.Bray-Curtis Distance:Bray-Curtis距离,用于衡量两个样本之间的相对差异,通常用于生态学中的物种组成数据。
6.Kulczynski Distance:Kulczynski距离,用于比较两个样本之间的相似性或差异。
7.Jaccard Distance:Jaccard距离,用于衡量两个样本之间的相似性,通常用于存在-缺失数据。
8.Gower Distance:Gower距离,用于比较样本之间的相似性,适用于混合数据类型。
9.AltGower Distance:另一种形式的Gower距离,适用于混合数据类型。
10.Morisita Distance:Morisita距离,用于衡量样本之间的相似性,特别适用于物种丰富度数据。
11.Horn Distance:Horn距离,用于比较两个样本之间的相似性或差异。
12.Mountford Distance:Mountford距离,一种用于存在-缺失数据的相似性指数。
13.Raup Distance:Raup距离,用于比较两个样本之间的相似性或差异,特别适用于存在-缺失数据。
14.Binomial Distance:二项式距离,用于衡量两个样本之间的相似性。
15.Chao Distance:Chao距离,一种用于处理样本大小不同的相似性指数。
16.Cao Distance:Cao距离,用于比较两个样本之间的相似性或差异。
17.Mahalanobis Distance:马氏距离,用于衡量多维数据中两个样本之间的距离。
18.Chisq Distance:卡方距离,用于比较两个样本之间的相似性或差异。
19.Chord Distance:Chord距离,用于计算两个样本之间的相似性。
20.Hellinger Distance:Hellinger距离,用于比较两个样本之间的相似性,通常用于频率数据。
21.Aitchison Distance:Aitchison距离,用于处理正组成数据的距离度量。
22.Robust Aitchison Distance:鲁棒Aitchison距离,用于处理非负数据(包括零值)的距离度量,相比标准Aitchison距离更鲁棒。
这些距离或相似性指数根据不同的数据类型、性质和分析目的,选择合适的指数进行数据分析和解释。
参考:vegdist: Dissimilarity Indices for Community Ecologists in vegan: Community Ecology Package