【问题标题】:Issue with RDA plot in RR中的RDA图问题
【发布时间】:2014-05-13 05:48:10
【问题描述】:

我是使用 R 进行多变量分析的新手。我正在尝试绘制一个 RDA 图来描述我的物种丰度与环境数据之间的关系。我有 6 个环境变量。但是当我获得绘图时,我只能看到两个向量单独代表两个变量。我使用的命令如下。

data <- read.csv("all_data.csv",h=T); 
library(vegan)
sp1 <- data[,c("Sample","Acidobacteria","Actinobacteria","Aquificae","Bacteroidetes")];
env1 <- data[,c("Nitrogen","TOC","Phosphate","Sand","Silt","Clay")];
myrda <- rda(sp1,env1)
plot(myrda,scaling=2)

请有人帮我解决这个问题。我希望在我的 RDA 图中看到所有 6 个环境参数。

【问题讨论】:

  • 请让您问题中的代码可重现?
  • 我已经给出了我尝试过的确切代码。如果需要添加更多信息,请告诉我。
  • 呃,有一次我没有链接到帖子...这里有一些如何改进问题的示例。 stackoverflow.com/questions/5963269/…

标签: r plot rda


【解决方案1】:

这是一个使用素食主义者的示例数据varespecvarechem 的示例。 rda模型的绘图自动显示所有14个环境变量:

library(vegan)
data(varespec)
data(varechem)
myrda <- rda(varespec, varechem)
myrda
colnames(varechem) # 14 variables
plot(myrda,scaling=2) # 14 vectors shown

也许仔细检查您的 data.frames 是否正确包含变量名称,以便绘图知道在哪里获取标签。我还将确保您的数据拆分工作正常 - 我认为您的方法不会总是有效。这是一个可能的替代方案:

sp.incl <- match(c("Sample","Acidobacteria","Actinobacteria","Aquificae","Bacteroidetes"), colnames(data))
sp1 <- data[,sp.incl]

env.incl <- match(c("Nitrogen","TOC","Phosphate","Sand","Silt","Clay"), colnames(data))
env1 <- data[,env.incl]

【讨论】:

  • 我尝试了上面的代码,但最终得到了相同的图,只有两个向量。我可以从 myrda 看到的消息如下。调用:rda(X = phyla, Y = envdata) 惯性比例等级总计 69.53 1.00 受限 69.53 1.00 2 无约束 0.00 0.00 0 惯性是方差 一些约束被别名,因为它们是共线(冗余)约束轴的特征值:RDA1 RDA2 61.680 7.852 请建议。
  • 您尝试使用示例素食数据还是您自己的数据?您可能会找到一些合理的建议here,其中解决了类似的问题。 vegan 的作者 Jari Oksanen 似乎暗示这个问题可能会在未来的 vegan 版本中得到解决。
  • 感谢您的链接。是否有任何其他 R 包可用于获取 RDA 图?
  • 您可以使用基本绘图功能。可以在 here 找到 Gavin Simpson 的指南。
  • 如果您查看上面给出的输出,您会看到"Constrained 69.53 1.00 2" 行告诉您您的受约束(“解释”)惯性是 69.53 和所有(1.00)由两个 (2) 轴解释。下一行确认确实没有剩余方差。你有二维,仅此而已。但是,veganrda 的现代版本将显示所有变量,除非它们是彼此的副本或组合。请检查您的环境数据(vegan 的版本:应该 >2)。
猜你喜欢
  • 2014-07-19
  • 2015-11-30
  • 2013-10-28
  • 1970-01-01
  • 2014-01-19
  • 2015-05-16
  • 1970-01-01
  • 2017-11-25
  • 1970-01-01
相关资源
最近更新 更多