簡體   English   中英

從源代碼重新加載自定義R包

[英]Reload Custom R Package from Source

我創建了一個自定義程序包,並希望將其部署到遠程計算機上。 這是我當前的冗長工作流程:

  • 創建自定義包“ 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')加載包library('my_package')

意見反饋指出,最佳做法是將軟件包安裝在共享位置。

這是您找到安裝軟件包的好地方的方法。

運行以下命令顯示從何處加載庫

.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 /'
  • 庫( 'my_package')

當其他人連接到計算機時,他們可以加載共享庫:

  • 庫( 'my_package')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM