从源重新加载自定义R包

时间:2017-05-01 22:21:54

标签: r microsoft-r deployr

我创建了一个自定义程序包,并希望将其部署到远程计算机上。这是我目前的长工作流程:

  • 创建自定义套餐' my_package_0.1.0.tar.gz'
  • scp包到远程机器
  • 创建远程会话
  • install.packages("/path/to/my_package0.1.0.tar.gz")
  • library('my_package')

当其他人连接到机器时,他们必须运行安装和库:

  • install.packages("/path/to/my_package0.1.0.tar.gz")
  • library('my_package')

有没有办法可以共享自定义包并让工作流程为:

  • 创建远程会话
  • 使用library('my_package')
  • 加载包

1 个答案:

答案 0 :(得分:0)

评论中的反馈说最佳做法是将软件包安装在共享位置。

以下是如何找到安装软件包的好地方。

运行以下显示从

加载库的位置
.libPaths()
# rserve2 rserve2 /opt/deployr/9.0.1/rserve/R
#root root        /usr/lib64/microsoft-r/3.3/lib64/R/library

R服务器正在寻找两个库。一个由root拥有,所以我们不应该在这里部署。另一个位置rserve2拥有拥有权,看起来很有希望。我们应该创建一个library子文件夹来存储共享包。

根据这些信息,工作流程应为:

  • 创建自定义包'my_package_0.1.0.tar.gz'
  • scp包到远程机器
  • 创建远程会话
  • install.packages(“/ path / to / my_package0.1.0.tar.gz”, lib ='/ opt / deployr / 9.0.1 / rserve / R / library /')< / LI>
  • 库( 'my_package')

当其他人连接到计算机时,他们可以加载共享库:

  • 库( 'my_package')
相关问题