use*_*881 17 namespaces r r-faq
我正在尝试使用Linux机器上安装一些R软件包
R CMD INSTALL -l <ourRlibrarylocation> <path where I saved the packagename.tar.gz file>
Run Code Online (Sandbox Code Playgroud)
我看到一条错误消息:
ERROR: a 'NAMESPACE' file is required
Run Code Online (Sandbox Code Playgroud)
我使用的是R 3.0.1.请帮助,我是R的新手,刚刚为客户下载了这些软件包.
一个例子:
R CMD INSTALL -l /abcde/R/R-3.0.0/library /home/RFILES/PKG/UScensus2000tract_0.03.tar.gz
* installing *source* package âUScensus2000tractâ ...
ERROR: a 'NAMESPACE' file is required
* removing â/abcde/R/R-3.0.0/library/UScensus2000tractâ
Run Code Online (Sandbox Code Playgroud)
pol*_*ise 39
根据R编写扩展的文档,所有发往3.0.0及更高版本的软件包都必须包含一个NAMESPACE文件.如果您下载的R软件包会出现上述错误,那么您应该尝试以下操作:
解开包裹:
tar -xvf the_package.tar.gz
Run Code Online (Sandbox Code Playgroud)
添加NAMESPACE一行文件exportPattern( "." ):
cd the_package
echo 'exportPattern( "." )' > NAMESPACE
cd ..
Run Code Online (Sandbox Code Playgroud)
重新打包包:
tar -zcf the_package.tar.gz the_package
Run Code Online (Sandbox Code Playgroud)
尝试重新安装它.
希望有所帮助.
实际上,我在编译 R-3.0.1 时也遇到了同样的问题。看起来我使用的软件包版本已经过时了。这是为了proto:
# /var/local/R-3.0.1/bin/R CMD INSTALL -l /var/local/R-3.0.1/lib64/R/library proto_0.3-9.2.tar.gz\n* installing *source* package \xe2\x80\x98proto\xe2\x80\x99 ...\nERROR: a 'NAMESPACE' file is required\n* removing \xe2\x80\x98/var/local/R-3.0.1/lib64/R/library/proto\xe2\x80\x99\nRun Code Online (Sandbox Code Playgroud)\n\n但有一个更新版本的 proto (0.3-10) 工作得很好:
\n\n# ../var/local/R-3.0.1/bin/R CMD INSTALL -l ../var/local/R-3.0.1/lib64/R/library proto_0.3-10.tar.gz\n* installing *source* package \xe2\x80\x98proto\xe2\x80\x99 ...\n** package \xe2\x80\x98proto\xe2\x80\x99 successfully unpacked and MD5 sums checked\n** R\n** demo\n** inst\n** preparing package for lazy loading\n** help\n*** installing help indices\n** building package indices\n** installing vignettes\n \xe2\x80\x98proto.Rnw\xe2\x80\x99\n \xe2\x80\x98protoref.Rnw\xe2\x80\x99\n** testing if installed package can be loaded\n* DONE (proto)\nRun Code Online (Sandbox Code Playgroud)\n\n我安装了较旧的 R (2.15),旧的原型包可以使用它:
\n\n# /var/local/R-2.15.0/bin/R CMD INSTALL -l /var/local/R-2.15.0/lib64/R/library proto_0.3-9.2.tar.gz\n* installing *source* package 'proto' ...\n** Creating default NAMESPACE file\n** R\n** demo\n** inst\n** preparing package for lazy loading\n** help\n*** installing help indices\n** building package indices\n** installing vignettes\n 'proto.Rnw'\n 'protoref.Rnw'\n** testing if installed package can be loaded\nRun Code Online (Sandbox Code Playgroud)\n\n看起来旧版本的 R 实际上创建了丢失的 NAMESPACE 文件,但新版本则放弃了。希望这对您有帮助!
\n| 归档时间: |
|
| 查看次数: |
12212 次 |
| 最近记录: |