首页 > 解决方案 > 在猿中运行 PGLS 时出错:“未指定协变量”

问题描述

我刚刚重新访问了一个旧的 r 脚本来仔细检查我的分析。当我尝试运行 PGLS 时出现这个新错误:

未指定协变量,物种将按数据框中的顺序排列。为避免出现此消息,请使用“form”参数指定包含物种名称的协变量。

我想知道这是否与新的更新有关?我认为我的脚本没有任何问题,因为当我尝试复制以前的教程时也遇到了这个错误。但以防万一我错了,我在下面粘贴了我的脚本:

gls(Diet_PC1~Habitat_PC1,correlation = corBrownian(phy = PrimateTree.phy), data=traits, method="ML")

有没有人有任何解决方案?

谢谢!医学博士

标签: ape-phylo

解决方案


不久前,我在浏览教程时遇到了类似的问题。据我了解,这与 6 月份推出的“ape”更新有关。cor[MODEL] 函数现在需要一个指定分类群协变量的公式。根据参考手册:

形式为 ~ t 或 ~ t | 的单边公式 g,指定分类群协变量 t 和可选的分组因子 g。此相关结构的协变量必须是字符值,其条目与系统发育树中的尖端标签匹配。当表格中存在分组因子时,假设相关结构仅适用于同一分组级别内的观察;假设具有不同分组级别的观察是不相关的。默认为 ~ 1,这对应于使用数据中观察的顺序作为协变量,并且没有组。

手册中的代码示例:

gls(Y ~ X, dat, correlation=corBrownian(1, tree.primates, form = ~Species))

当时,我无法弄清楚如何在我正在使用的教程中使用“form”参数并获得预期的结果。所以,我安装了之前发布的“ape”版本,一切都运行得很好(获得了本教程的预期结果)。我确信这是一个非常有用的参数,但我当时找不到任何关于如何正确使用它的好资源。


推荐阅读