我是否正确使用 dbRDA 和有序变量?输出中的 *.L 和 *.Q 箭头是什么?
Am I using dbRDA correctly with ordered variables? What are the *.L and *.Q arrows in the output?
当我像这样将 dbRDA 应用于距离矩阵(在本例中为 Bray-Curtis 距离)时:
dbrda(sqrt(dist) ~ ., site_vars)
是否可以在 site_vars
变量中包含一列有序因子,该变量是一个数据框,其中包含在采样点测量的值,例如平均温度,但其中还包括一列“土壤”,其中订购了不同的土壤类型?或者是否需要将所有序数和标称比例变量添加到公式的单独 Condition
参数中?
这里有一个小例子:
data <- rbind(
c(1, 1, 0, 1, 1, 0, 0, 0, 0, 0),
c(1, 1, 1, 0, 1, 1, 0, 0, 0, 0),
c(0, 1, 0, 1, 0, 1, 1, 0, 1, 0),
c(1, 0, 0, 0, 1, 0, 1, 1, 1, 0),
c(0, 0, 0, 1, 0, 0, 0, 0, 1, 1)
)
rownames(data) <- c("Site_1", "Site_2", "Site_3", "Site_4", "Site_5")
colnames(data) <- c("Spec_1", "Spec_2", "Spec_3", "Spec_4", "Spec_5", "Spec_6", "Spec_7", "Spec_8", "Spec_9", "Spec_10")
dist <- vegdist(data, "bray")
site_vars <- data.frame(
Tmean = c(9, 10, 12, 14.5, 14),
SomethingElse = c(12, 14, 13, 16, 21),
Soil = c("good", "good", "OK", "OK", "bad")
)
site_vars$Soil <- ordered(site_vars$Soil, levels = c("good", "OK", "bad"))
# Version 1
dbRDA_Condition <- dbrda(sqrt(dist) ~ Tmean + SomethingElse + Condition(Soil), site_vars)
plot(dbRDA_Condition)
# Version 2
dbRDA <- dbrda(sqrt(dist) ~ Tmean + SomethingElse + Soil, site_vars)
plot(dbRDA)
版本 1 似乎忽略了我的土壤变量排名这一事实。版本 2 生成的输出我觉得有点难以解释,因为除了组质心之外,它还显示箭头。我希望土壤有 1 个箭头,就好像它是一个具有数字 1、2 和 3 而不是三个级别的数值变量。但是,它显示了两个箭头,标记为 Soil.L 和 Soil.Q。为什么一个变量有两个箭头? *.L 和 *.Q 代表什么?不幸的是,我没有找到任何解释。
R 使用对比分析因素。在无序因子中,默认对比是与第一个因子水平的差异。对于有序因子,R使用多项式对比:线性(L
)、二次(Q
)、三次(C
)、四阶( ^4
)。查看 R 统计环境的任何指南。 dbrda
没有发明此功能,但它是 R 标准。
当我像这样将 dbRDA 应用于距离矩阵(在本例中为 Bray-Curtis 距离)时:
dbrda(sqrt(dist) ~ ., site_vars)
是否可以在 site_vars
变量中包含一列有序因子,该变量是一个数据框,其中包含在采样点测量的值,例如平均温度,但其中还包括一列“土壤”,其中订购了不同的土壤类型?或者是否需要将所有序数和标称比例变量添加到公式的单独 Condition
参数中?
这里有一个小例子:
data <- rbind(
c(1, 1, 0, 1, 1, 0, 0, 0, 0, 0),
c(1, 1, 1, 0, 1, 1, 0, 0, 0, 0),
c(0, 1, 0, 1, 0, 1, 1, 0, 1, 0),
c(1, 0, 0, 0, 1, 0, 1, 1, 1, 0),
c(0, 0, 0, 1, 0, 0, 0, 0, 1, 1)
)
rownames(data) <- c("Site_1", "Site_2", "Site_3", "Site_4", "Site_5")
colnames(data) <- c("Spec_1", "Spec_2", "Spec_3", "Spec_4", "Spec_5", "Spec_6", "Spec_7", "Spec_8", "Spec_9", "Spec_10")
dist <- vegdist(data, "bray")
site_vars <- data.frame(
Tmean = c(9, 10, 12, 14.5, 14),
SomethingElse = c(12, 14, 13, 16, 21),
Soil = c("good", "good", "OK", "OK", "bad")
)
site_vars$Soil <- ordered(site_vars$Soil, levels = c("good", "OK", "bad"))
# Version 1
dbRDA_Condition <- dbrda(sqrt(dist) ~ Tmean + SomethingElse + Condition(Soil), site_vars)
plot(dbRDA_Condition)
# Version 2
dbRDA <- dbrda(sqrt(dist) ~ Tmean + SomethingElse + Soil, site_vars)
plot(dbRDA)
版本 1 似乎忽略了我的土壤变量排名这一事实。版本 2 生成的输出我觉得有点难以解释,因为除了组质心之外,它还显示箭头。我希望土壤有 1 个箭头,就好像它是一个具有数字 1、2 和 3 而不是三个级别的数值变量。但是,它显示了两个箭头,标记为 Soil.L 和 Soil.Q。为什么一个变量有两个箭头? *.L 和 *.Q 代表什么?不幸的是,我没有找到任何解释。
R 使用对比分析因素。在无序因子中,默认对比是与第一个因子水平的差异。对于有序因子,R使用多项式对比:线性(L
)、二次(Q
)、三次(C
)、四阶( ^4
)。查看 R 统计环境的任何指南。 dbrda
没有发明此功能,但它是 R 标准。