我正在尝试使用Rscript从命令行运行一些R脚本。我在mac和linux上都试过了,在这两种情况下都遇到了以下问题。下面的测试脚本非常好,只要我将它输入R:
is脚本只打印出函数"is“。但是,如果我把它放在这样的文件中:
#!/usr/bin/Rscript
is然后使用"./test.R“或"Rscript test.R”运行它,我将得到以下错误:
Error: object 'is' not found
Execution halted似乎在Rscript中没有定义" is“函数,就像在R中那样。我如何才能使我的脚本工作?
Note:很明显,我的目标不仅仅是打印出" is“函数。我试图使用gamlss,gamlss调用了" is“函数,导致了这个错误。
编辑:在R中,sessionInfo()给出:
R version 3.0.2 (2013-09-25)
Platform: x86_64-apple-darwin10.8.0 (64-bit)
locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
attached base packages:
[1] stats graphics grDevices utils datasets methods base
loaded via a namespace (and not attached):
[1] tools_3.0.2从Rscript中,它提供了:
R version 3.0.2 (2013-09-25)
Platform: x86_64-apple-darwin10.8.0 (64-bit)
locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
attached base packages:
[1] stats graphics grDevices utils datasets base 发布于 2014-07-09 17:54:48
结果是,解决方案是加载“方法”包(其中包含" is“函数)。我想它在默认情况下是在R中加载的,但由于某种原因没有在Rscript中加载。如果我将脚本更改为:
#!/usr/bin/Rscript
library(methods)
is然后,它在命令行中工作得很好。
https://stackoverflow.com/questions/24660549
复制相似问题