为何dbRDA输出的约束轴解释方差占比数值不一致?
Vegan中dbRDA两种输出结果差异的原因及正确性说明
差异根源
- 直接调用
dbrda模型对象时,显示的约束轴解释方差是未调整的R²:这个值是模型对当前样本数据的原始拟合程度,会随着纳入的解释变量数量增加而被高估,没有考虑样本量和变量数的影响。 - 执行
summary(dbrda)输出的是调整后的R²:这是vegan包在summary函数中的默认展示项,它通过公式校正了样本量、解释变量数量带来的偏差,剔除了变量过多导致的虚假解释率提升,因此数值会比未调整的R²更小。
哪个结果正确?
没有绝对的“正确”,取决于你的研究目的:
- 若仅需描述当前数据集的拟合情况,直接调用模型得到的未调整R²(即你提到的42%)能反映模型对现有样本的解释比例,但存在高估风险。
- 若要推断模型对总体的解释能力,summary输出的调整后R²更具统计可靠性,它能避免因变量过多或样本量不足导致的过拟合偏差,更贴近真实的解释效果。
内容的提问来源于stack exchange,提问作者japes
相关产品推荐
相关产品推荐

