Vegan 解读纯素食主义者的procrustes输出
我想弄清楚我应该如何解释纯素食主义者的普罗克斯特分析结果。具体来说,Vegan 解读纯素食主义者的procrustes输出,vegan,Vegan,我想弄清楚我应该如何解释纯素食主义者的普罗克斯特分析结果。具体来说,摘要(procrustes\u对象)与抗议函数中的平方和结果有什么不同 以下是一个玩具示例: library(vegan) #some environmental data env <- read.table(header=TRUE, row.names="site",text="site temp rainfall ph A 11 600 6 B 13 550 8 C 13 500 6
摘要(procrustes\u对象)
与抗议
函数中的平方和结果有什么不同
以下是一个玩具示例:
library(vegan)
#some environmental data
env <- read.table(header=TRUE, row.names="site",text="site temp rainfall ph
A 11 600 6
B 13 550 8
C 13 500 6
D 13 450 8
E 14 400 7
F 15 400 7")
#some animal abundances
animals <- read.table(header=TRUE, row.names="site",text="site frogs birds mammals insects spiders
A 54 45 32 88 77
B 64 54 30 85 74
C 50 49 28 81 50
D 30 43 26 84 60
E 13 44 24 86 40
F 14 51 22 50 22")
#some tree abundances
trees <- read.table(header=TRUE, row.names="site",text="site elm oak maple yew willow pine
A 1 55 44 81 34 88
B 3 58 50 78 40 87
C 7 56 40 74 33 75
D 3 54 24 77 22 80
E 1 55 10 79 14 70
F 7 57 11 43 15 61")
#run CCAs for animals and trees against available environmental data
cca_animals <- cca(animals, env)
cca_trees <- cca(trees, env)
pro1 <- procrustes(cca_animals, cca_trees) #run procrustes to compare animal and tree CCAs
summary(pro1) #procrustes sum of squares = 0.786
protest(cca_animals, cca_trees) #procrustes sum of quares = 0.047
#correlation in a symmetric procrustes rotation=0.976
library(素食主义者)
#一些环境数据
env基本Procrustes和抗议之间的主要区别在于,Procrustes
始终是对称的,而Procrustes
默认为非对称:Procrustes
将一个解决方案旋转到另一个解决方案(目标)。你的问题显然是对称的,你应该使用procrustes
和参数symmetric=TRUE
或等效的抗议
我不确定Procrustes分析对你的情况是否有用。您有两个约束排序,并且约束在这两个方面都相等。如果查看所有受约束的轴和LC分数(是约束的线性组合),受约束的顺序也将相等。如果你尝试一下,你会看到这个
plot(procrustes(cca_trees, cca_animals, scores="lc", symmetric=TRUE, choices=1:3))
如果有很多约束,只看第一个维度,那么可能会有一些差异(在本例中差异很小)。此外,当您查看加权平均分数(这是procrustes
中的默认值)时,您会得到更多的分散度。然而,如果分析可以有效地解释,你应该考虑自己。这是一个非技术性的问题,不适用于StackOverflow。基本Procrustes和抗议的主要区别在于抗议总是对称的,而Procrustes
默认为非对称:Procrustes
将一个解决方案旋转到另一个解决方案(目标)。你的问题显然是对称的,你应该使用procrustes
和参数symmetric=TRUE
或等效的抗议
我不确定Procrustes分析对你的情况是否有用。您有两个约束排序,并且约束在这两个方面都相等。如果查看所有受约束的轴和LC分数(是约束的线性组合),受约束的顺序也将相等。如果你尝试一下,你会看到这个
plot(procrustes(cca_trees, cca_animals, scores="lc", symmetric=TRUE, choices=1:3))
如果有很多约束,只看第一个维度,那么可能会有一些差异(在本例中差异很小)。此外,当您查看加权平均分数(这是procrustes
中的默认值)时,您会得到更多的分散度。然而,如果分析可以有效地解释,你应该考虑自己。这不是StackOverflow的一个非技术性问题。我应该补充一点,我在这个例子中试图看到的是,动物和树木群落在测试环境变量方面是否具有相似的结构。根据文件,抗议
运行对称Procrustes分析,然而,procrustes
默认为非对称分析。我应该补充一点,我在这个例子中试图看到的是,动物和树木群落是否对测试的环境变量具有相似的结构。根据文档,procrustes
运行对称的procrustes分析,而procrustes
默认为非对称分析。为什么procrustes(cca_树、cca_动物)的残差与procrustes(cca_动物、cca_树)的残差不同?这是我的。默认的Procrustes分析是非对称的:一个矩阵(目标)保持不变,另一个旋转到该矩阵。如果你想得到对称的Procrustes分析,你必须设置参数symmetric=TRUE
。我在评论之前仔细阅读,我已经将这个参数设置为TRUE
,并且抗议(A,B)
和抗议(B,A)
之间的统计数据是相同的。但残差是不同的。你可以通过点击我在你评论上面的评论中发布的链接来看到它。是的。情况似乎是这样。将a旋转到B并测量未旋转B中的残差与将B旋转到a并测量未旋转a中的残差是完全不同的过程。拟合优度统计可以对称,旋转角度至少是镜像对称的。共惯性分析是否提供了对称“残差”的可能性(在共惯性空间中实现的距离)?我知道这不是一个适当的堆栈溢出讨论。这就是为什么我在CrossValidated上发表文章。但我们可以在这里继续讨论。为什么procrustes(cca_树,cca_动物)的残差与procrustes(cca_动物,cca_树)的残差不同?这是我的。默认的Procrustes分析是非对称的:一个矩阵(目标)保持不变,另一个旋转到该位置。如果要获得对称的Procrustes分析,必须设置参数symmetric=TRUE
。我在评论之前仔细阅读,我已经将此参数设置为TRUE
,并且抗议(A,B)
和抗议(B,A)之间的统计数据相同
。但是残差是不同的。你可以通过点击我在你评论上面的评论中发布的链接来亲自查看。是的,的确如此。这似乎是事实。将a旋转到B并在未旋转的B中测量残差与将B旋转到a并在未旋转的a中测量残差是完全不同的过程。拟合优度统计cs可以是对称的,并且旋转角度至少是镜像对称的。共惯性分析是否提供了对称“残差”(在共惯性空间中实现的距离)的可能性?我知道这不是一个适当的堆栈溢出讨论。这就是我在CrossValidated中发布的原因。但我们可以在这里继续讨论这个问题。