找不到函数“.getNamespace”

时间:2013-04-04 11:06:37

标签: r

我的R会话:

R version 2.15.1 (2012-06-22)
Platform: i386-pc-mingw32/i386 (32-bit)

locale:
[1] LC_COLLATE=English_United States.1252 
[2] LC_CTYPE=English_United States.1252   
[3] LC_MONETARY=English_United States.1252
[4] LC_NUMERIC=C                          
[5] LC_TIME=English_United States.1252    

attached base packages:
[1] stats     graphics  grDevices datasets  utils     methods   base     

other attached packages:
[1] rcom_2.2-5     rscproxy_2.0-5

loaded via a namespace (and not attached):
[1] tools_2.15.1

问题在于:

> require(KFAS)
Loading required package: KFAS
Error in eval(expr, envir, enclos) : 
  could not find function ".getNamespace"
In addition: Warning message:
package ‘KFAS’ was built under R version 3.0.0 
Error : unable to load R code in package ‘KFAS’

这是我第一次在加载包时遇到这样的错误。 KFAS手册说我只需要R >= 2.15.0

这有什么问题?

2 个答案:

答案 0 :(得分:4)

.getNamespace函数是R 3.0.0的一部分。警告消息指出您安装的软件包是为R 3.0而不是2.15构建的。该程序包正在尝试使用.getNamespace函数,但找不到它,因为它不是R 2.15的一部分。您可以升级到R 3.0(现在似乎有点实验性)或安装R 2.xx版本的软件包。

只需使用以下方法安装软件包:

install.packages("KFAS")
library(KFAS)

对我来说很好。

答案 1 :(得分:1)

我在pqR(从R 2.15构建)中安装了这个问题。初步看起来可以从.getNamespace复制R 3.0的定义:

.getNamespace <- function(name) .Internal(getRegisteredNamespace(as.name(name)))

(...我刚刚在base-r会话后输入.getNamespace来复制R 3.0中的定义...)

并将其输入有问题的R 2.15实例。