这条消息是我用R-Forge写的一条消息的副本。我想对我的数据进行主响应曲线分析。我有几对鹿在魁北克省安蒂科里岛上吃草的地块。在4年的时间里,对每个样地进行了重复观测。在每个地点,围栏内有一块地块(没有鹿,称为“围栏”),另一块地块在围栏外(有鹿,称为“对照”)。我想在中国的分析中考虑到每个封闭体内和外的观察配对。我想在PRC中添加另一个条件项(就像在部分RDA中一样),以考虑成对的观测值或从使用PRC公式计算的部分RDA中提取值,并像在PRC中一样绘制它。
更重要的是,我想用排列测试来测试这两种处理之间的差异的意义。我的假设是找出围栏中的植被组成是否与对照中的不同。因此,我想知道这两种治疗方法之间是否有区别,如果有的话,在多少年后。
有人知道怎么做吗?
所以这里是我的prc的代码(不考虑成对的观察结果):
levels (treat)
[1] "controle" "exclosure"
levels (years)
[1] "0" "3" "5" "8"
prc.out <- prc(data.prc.spe.hell, treat, years)
species <- colSums(data.prc.spe.hell)
plot(prc.out, select = species > 5)
ctrl <- how(plots = Plots(strata = site,type = "free"),
within = Within(type = "series"), nperm = 99)
anova(prc.out, permutations = ctrl, first=TRUE)Here is the result.
非常感谢您的帮助!
发布于 2017-07-26 22:16:06
我可能对你问题的第一部分有一个答案:“我想在PRC中添加另一个条件项(就像在部分RDA中)来考虑成对的观察结果”。
我目前正在处理一个类似的案例,这就是我想出来的:由于主响应曲线(PRC)是RDA的一个特例,目标是做一种“部分PRC",我阅读了函数rda()的R文档,我发现:”如果提供矩阵Z,它的影响将从社区矩阵中删除,并将残差矩阵提交到下一阶段。“
所以,如果我理解的很好,当你对X,Y,Z (X=community矩阵,Y=Constraining矩阵,Z=Conditioning矩阵)做部分RDA时,函数做的第一件事就是利用X~Z的RDA的残差矩阵来消除Z的影响。
如果这是真的,那么很容易单独完成这一步,然后在PRC中使用残差矩阵:
library(vegan)
rda.out = rda(X ~ Z) # equivalent of "rda.out = rda(X ~ Condition(Z))"
rda.res = residuals(rda.out)
prc.out = prc(rda.res, treatment, time)如果您为配对效果编写了一个虚拟变量,我认为它应该是as.factor()而不是as.numeric()。
我不是统计专家,但它在我看来是正确的。尽管这看起来很简单,但如果有人能验证我的答案,我将不胜感激。
干杯
https://stackoverflow.com/questions/35025734
复制相似问题