【问题标题】:Trouble understanding constrained ordination in Redundancy analysis (RDA) with vegan package使用 vegan 包在冗余分析 (RDA) 中难以理解约束排序
【发布时间】:2019-10-19 21:22:03
【问题描述】:

根据审稿人的建议,我正在使用冗余分析 (RDA) 分析功能特征数据。这是我第一次使用这种方法,所以我很难理解它的微妙之处。

我的数据结构如下:

# Generate a dataset of 7 traits for 27 individuals
traits_test <- as.data.frame(matrix(data = 0, ncol = 7, nrow = 27))
colnames(traits_test) <- paste(array("trait_", dim = 7), c(1:7), sep = "")
for(i in 1:7) traits_test[,i] <- runif(27, 0, 1)

# Generate a dataframe with 3 factors
factor1 <- as.factor(c("A", "A", "A", "A", "A","B", "B", "B", "B", "A", 
                       "A", "A", "A", "A", "B","B", "B", "B", "A", "A", 
                       "A", "A", "A", "B","B", "B", "B"))
factor2 <- as.factor(c(array("C", dim = 9), array("D", dim = 18)))
factor3 <- as.factor(c(array("E", dim = 9), array("F", dim = 9), array("G", dim = 9)))
varexp <- cbind.data.frame(factor1, factor2, factor3)

我研究的第一步是使用以下混合模型分析每个特征:

trait_x ~ factor1 + factor2 + (1|factor3)

第二步是使用带有 RDA 的多变量方法。由于我不知道如何在 RDA 中包含随机效应,因此我使用以下模型将第三个因子编码为正常因子(这给了我令人满意的结果):

# Analysis conducted with the vegan package
library(vegan)

# RDA analysis
RDA <- rda(traits_test ~ factor1 + factor2 + factor3, data = varexp)

但是,审稿人建议我将第三个因素编码为与以下模型的协变量:

RDA <- rda(traits_test ~ factor1 + factor2 + Condition(factor3), data = varexp)

我不明白的是,在最后一个模型中,我在输出中只有 1 个 RDA 轴,而不是初始模型中的 3 个。有人可以向我解释一下将一个因素包含为条件是什么意思,它真的等同于随机效应吗?

感谢任何可以提供帮助的人!

【问题讨论】:

    标签: r vegan rda


    【解决方案1】:

    这意味着~ factor1 + factor2 的某些术语在您第一次使用factor3 时被别名。 “别名”的意思与同义词大致相同。也就是说,当您知道factor3 的值时,您也知道factor1factor2 的值。这些不会向您已经拥有factor3 的模型添加任何新信息。您还收到一条消息,称某些术语被别名。

    要查看哪些术语有别名,请使用您的结果对象RDA

    alias(RDA) # long display
    alias(RDA, names = TRUE) # give only the names of aliased terms
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-08-01
      • 2012-12-12
      • 2018-07-09
      • 1970-01-01
      • 2016-09-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多