我正忙着探索R的包 vegan ,用它来计算社区矩阵和空模型的嵌套性。我对使用permat函数以及Oecosimu特别感兴趣。
然而,在运行我的程序时,我获得了以下错误:
然后,我甚至运行了一个如何使用R帮助函数给出的这些函数的示例(如下所示),甚至这些示例也给出了相同的错误。我想为了使用这些功能而导入其他东西,或者我该如何解决这个问题呢?nullmodel(comm,method)出错:找不到函数“list2env” nullmodel(m,ALGO)出错:找不到函数“list2env”
示例:
m <- matrix(c(
1,3,2,0,3,1,
0,2,1,0,2,1,
0,0,1,2,0,3,
0,0,0,1,4,3
), 4, 6, byrow=TRUE)
x1 <- permatswap(m, "quasiswap")
summary(x1)
x2 <- permatfull(m)
summary(x2)
x3 <- permatfull(m, "none", mtype="prab")
x3$orig
summary(x3)
x4 <- permatfull(m, strata=c(1,1,2,2))
summary(x4)
答案 0 :(得分:2)
从技术上讲,这是R-Forge上Vegan的开发版本中的一个错误。我们未能在DESCRIPTION
中声明对R版本&gt; = 2.12的依赖。我已经检查了源代码树的相关更改以解决此问题,但是在R-Forge重建tarball和二进制文件之前需要一天左右。
那就是说,您应该将R更新为更近期的内容。或者使用CRAN上的Vegan 2.0-x中提供的那些功能的版本。
答案 1 :(得分:1)
list2env
是R base的一部分,这意味着它附带了发行版,而不是附加软件包。因此,如果您没有它,您可能要么运行旧版本的R,要么安装中断。这个例子对我很好,R 2.12.1和素食主义者2.1-0。
答案 2 :(得分:1)
您的代码适用于我而没有错误消息
您错误的最可能原因是您使用旧版R
,vegan
或permute
版本变更2.12.0:新功能:
o New list2env() utility function as an inverse of as.list(<environment>) and for fast multi-assign() to existing environment. as.environment() is now generic and uses list2env() as list method.
R版本的变化2.12.1:BUG FIXES:
o When list2env() created an environment it was missing a PROTECT call and so was vulnerable to garbage collection.
版本2.13.0中的变化:新功能:
o list2env(envir = NULL) defaults to hashing (with a suitably sized environment) for lists of more than 100 elements.
因此,请更新您的R版本和软件包,然后重试。