无法使用Rscript命令在服务器上加载R库

时间:2014-09-06 16:42:28

标签: r gplots

我正在使用

从perl-cgi打电话

my $call = qx(Rscript tcga_analysis.R $bg_name $ctr_name $set $user);

当我在服务器上使用unix的Rscript myRscript.R时,它可以工作但是从perl我似乎无法加载任何包。我收到以下错误(来自Apache日志):

Error in library(gplots) : there is no package called 'gplots'

使用.libPaths():

> .libPaths()
[1] "/home/sbattaglia/R/x86_64-redhat-linux-gnu-library/3.1"
[2] "/usr/lib64/R/library"
[3] "/usr/share/R/library"

在主文件夹中显示我的个人图书馆。

我尝试使用

library(gplots, lib.loc="/home/sbattaglia/R/x86_64-redhat-linux-gnu-library/3.1")

但我得到一个lib.loc error说没有库树。 我甚至在工作目录中创建了一个包含库路径的.Rprofile文件,但没有成功。我也尝试添加pos=1,但没有成功......

但是,如果我打开R并致电library(gplots),它就会起作用

我需要让它从perl调用Rscript,因为它是使用Web界面的分析管道的一部分 - > perl-cgi - > R来分析一些数据!

谢谢:)

1 个答案:

答案 0 :(得分:0)

我要发布与@floded聊天时提出的答案。

基本上,这些库位于服务器上Apache不可见的文件夹中。 我在.R和.cgi文件所在的位置重新下载了我需要的软件包,指定library(gplots, lib.loc="correctPathToLibrary")并且它有效:)