R 如何纠正“错误”;nullmodel(comm,method)中出错:找不到函数;列表2env“;在纯素套餐中

R 如何纠正“错误”;nullmodel(comm,method)中出错:找不到函数;列表2env“;在纯素套餐中,r,R,我正忙于探索VeganforR软件包,用它来计算社区矩阵和空模型的嵌套度。我对使用permat函数和Oecosimu特别感兴趣 但是,在运行我的程序时,我发现以下错误: nullmodel(comm,method)中出错:找不到函数“list2env” nullmodel(m,ALGO)中出错:找不到函数“list2env” 然后,我甚至运行了一个示例(如下所示)来说明如何使用R help函数给出的这些函数,甚至这些示例也给出了相同的错误。为了使用这些函数,我是否需要导入其他内容,或者如何着手解

我正忙于探索VeganforR软件包,用它来计算社区矩阵和空模型的嵌套度。我对使用permat函数和Oecosimu特别感兴趣

但是,在运行我的程序时,我发现以下错误:

nullmodel(comm,method)中出错:找不到函数“list2env” nullmodel(m,ALGO)中出错:找不到函数“list2env”

然后,我甚至运行了一个示例(如下所示)来说明如何使用R help函数给出的这些函数,甚至这些示例也给出了相同的错误。为了使用这些函数,我是否需要导入其他内容,或者如何着手解决这个问题

示例:

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)

m
list2env
是R base的一部分,这意味着它是随发行版提供的,而不是附加包。因此,如果您没有它,您可能正在运行旧版本的R或有一个坏的安装。这个例子对我来说效果很好,使用了R2.12.1和Vegan2.1-0。

list2env
是R base的一部分,这意味着它随发行版而来,而不是附加包。因此,如果您没有它,您可能正在运行旧版本的R或有一个坏的安装。使用R2.12.1和Vegan2.1-0,这个示例对我来说效果很好。

您的代码对我来说很有效,没有错误消息

导致错误的最可能原因是您使用了旧版本的
R
vegan
permute

警察说

R版本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.
o list2env(envir = NULL) defaults to hashing (with a suitably sized
  environment) for lists of more than 100 elements.
R版本2.13.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.
o list2env(envir = NULL) defaults to hashing (with a suitably sized
  environment) for lists of more than 100 elements.

因此,请更新您的R版本和软件包,然后再试一次。

您的代码适用于我,没有错误消息

导致错误的最可能原因是您使用了旧版本的
R
vegan
permute

警察说

R版本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.
o list2env(envir = NULL) defaults to hashing (with a suitably sized
  environment) for lists of more than 100 elements.
R版本2.13.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.
o list2env(envir = NULL) defaults to hashing (with a suitably sized
  environment) for lists of more than 100 elements.

因此,请更新您的R版本和软件包,然后重试。

从技术上讲,这是R-Forge上的Vegan开发版本中的一个错误。我们未能在
说明
中声明对R版本>=2.12的依赖关系。我已经检查了源代码树的相关更改以修复此问题,但是在R-Forge重建tarball和二进制文件之前需要一天左右的时间


也就是说,您可能应该将R更新为更新的版本。或者使用CRAN上的Vegan 2.0-x中提供的功能版本。

从技术上讲,这是R-Forge上的Vegan开发版本中的一个缺陷。我们未能在
说明
中声明对R版本>=2.12的依赖关系。我已经检查了源代码树的相关更改以修复此问题,但是在R-Forge重建tarball和二进制文件之前需要一天左右的时间

也就是说,您可能应该将R更新为更新的版本。或者在CRAN上使用Vegan 2.0-x中提供的功能版本