我在R中进行部分规范对应分析(pCCA)时遇到问题。与代码相关的数据相当广泛,所以我无法在此处包含它。
以下代码会在其下方生成错误。在pCCA模型中,我试图在解释物种矩阵时考虑环境和空间变量。空间变量是纬度和经度值。 Env2变量是连续的和一些二进制(0,1)环境变量的主机。
mod2 <-cca(species ~ env2 + spatial)
Error in model.frame.default(~env2 + spatial, na.action = na.pass, xlev = NULL) : invalid type (list) for variable 'env2'
我已经对env2和spatial使用了unlist(),但它不起作用。 想法?
答案 0 :(得分:1)
公式的右侧必须有变量,但似乎您有多个变量的数据框。这不起作用,但会给出与帖子中类似的错误消息(并记录在案)。此外,您的公式不会定义部分 CCA,因为该公式不包含定义偏出的术语的函数Condition()
。
如果您将数字矩阵作为术语,则公式界面可能有效,但它不适用于unlist()
个变量。
如果您使用的是纯素 2.5-1或更高版本,则可以将不带公式界面的部分CCA 定义为
cca(species, env2, spatial)
数据框env2
和spatial
会自动展开为模型矩阵,在分析spatial
项的影响之前,env2
项会被分开。