2016-11-02 7 views
0

早上好,從本地回購安裝的R程序包(名爲.tar.gz的所有文件都被下載有)來自澳大利亞

由於我們的電腦工作不具備上網,我問過我們的IT經理下載所有R軟件包並將它們放置在共享網絡位置。因爲我已經傳送包的那些4GB到我的本地目錄: E:/R-3.3.1/MyRPackages/src/contrib/______的tar.gz

我想我要安裝的軟件包在E:\ R-3.3.1 \庫

我正在使用Windows 7 Professional,64位,隨着RStudio和R版本3.3.1(2016-06-21)。

我只想安裝包並從我的本地倉庫安裝包,包括它的所有依賴項。

我試着讀過這個,並嘗試了install.packages命令的幾個排列,但沒有運氣。例如,

install.packages("E:/R-3.3.1/MyRPackages/src/contrib/devtools_1.12.0.tar.gz",dependencies = TRUE,repos = NULL)

ERROR:依賴關係 'HTTR', 'memoise', '晶須', '摘要', 'rstudioapi', 'jsonlite', 'git2r', 'withr' 不適用於包' devtools' *刪除'E:/R-3.3.1/library/devtools' install.packages中的警告: 運行命令'「E:/R-33~1.1/bin/x64/R」CMD INSTALL -l 「E:\ R-3.3.1 \ library」「E:/R-3.3.1/MyRPackages/src/contrib/devtools_1.12.0.tar.gz」'的狀態爲1 install.packages中的警告: 安裝包'E:/R-3.3.1/MyRPackages/src/contrib/devtools_1.12.0.tar.gz'具有非零退出狀態

install.packages("E:/R-3.3.1/MyRPackages/src/contrib/devtools_1.12.0.tar.gz",dependencies = TRUE,repos = NULL,lib="E:/R-3.3.1/library")

錯誤:依賴 'HTTR', 'memoise', '鬍鬚', '消化', 'rstudioapi', 'jsonlite', 'git2r', 'withr' 不適用於包 'devtools' *移除' E:/R-3.3.1/library/devtools' install.packages中的警告: 運行命令'「E:/R-33~1.1/bin/x64/R」CMD INSTALL -l「E:\ R- 3.3.1 \ library「」E:/R-3.3.1/MyRPackages/src/contrib/devtools_1.12.0.tar.gz「'具有狀態1 install.packages中的警告: 安裝包E:/ R -3.3.1/MyRPackages/src目錄/的contrib/devtools_1.12.0.tar.gz」有非零退出狀態

install.packages("E:/R-3.3.1/MyRPackages/src/contrib/devtools_1.12.0.tar.gz",dependencies = TRUE,repos = NULL,lib="E:/R-3.3.1/library",type = "source")

Ë RROR:依賴項'httr','memoise','whisker','digest','rstudioapi','jsonlite','git2r','withr'不能用於包'devtools' *刪除'E:/ R -3.3.1/library/devtools' install.packages中的警告: 運行命令'「E:/R-33~1.1/bin/x64/R」CMD INSTALL -l「E:\ R-3.3.1 \庫「」E:/R-3.3.1/MyRPackages/src/contrib/devtools_1.12.0.tar.gz「'具有狀態1 install.packages中的警告: 安裝包'E:/R-3.3.1 /MyRPackages/src/contrib/devtools_1.12.0.tar.gz'具有非零退出狀態

+0

因爲你'回購= NULL',R不會知道其中t o尋找依賴關係,因此您還需要下載它們,並事先安裝它們。有沒有原因,例如'install.packages(「devtools」)'? ...對不起,應該已經讀了你的第一句話! – rosscova

+0

由於您使用的是Windows,因此您應該安裝二進制文件(zip文件)。這比從源代碼編譯軟件包容易得多。或者,您可以簡單地將每個zip文件解壓縮到e:/R-3.3.1/library。 –

+0

我目前正在將它們解壓縮到我的庫中,但是當我嘗試使用庫('package_name')加載包時,它說「libary中的錯誤(」blah「):」Blah「不是有效的安裝包 – AmericanTourist

回答

0

沒有互聯網連接,您需要讓IT經理下載依賴項包,並將它們安裝在適當的順序。當你將repos = NULL傳遞給install.packages函數時,它無處尋找那些依賴關係。

由於這些依賴關係中的每一個都可能具有自己的*依賴關係,因此這可能最終成爲IT經理屁股中的一大痛苦(是的,我也在澳大利亞!)。我可以建議你在你的機器上安排一個臨時連接到互聯網嗎?否則,可能會看看Packrat,它應該(我以前沒有使用過它)允許您的IT經理創建一個包含您所需的包(包括它們的依賴項)的項目。然後你可以使用它在你的機器上安裝軟件包。

  • 例如,包httr上devtools依賴,本身取決於mimecurlopenssl,並R6 ... mime然後繼續依賴於tools ...上下兔子洞纔好。 ..
+0

嗯......好吧,目前我已經下載了所有9000+包。所以是的,它應該有所有這些依賴關係。 – AmericanTourist

2

跟隨@ rosscova的答案有點:有各種工具來確定一個包的完整遞歸依賴關係。隨着一點點更多的工作,你可以寫一個腳本來抓住他們所有的(這的確是極有可能已被有人在什麼地方已經做了...)

## dependencies=TRUE 
devtools::package_deps("devtools",dependencies=TRUE) 
(p <- package_deps("devtools",dependencies=TRUE)) 
Needs update ----------------------------- 
package  installed available remote 
curl   1.2  2.2  CRAN 
evaluate  0.9  0.10  CRAN 
gmailr  NA  0.7.1  CRAN 
hunspell  NA  2.1  CRAN 
irlba   2.1.1  2.1.2  CRAN 
openssl  0.9.4  0.9.5  CRAN 
R6   2.1.3  2.2.0  CRAN 
rmarkdown  1.0  1.1  CRAN 
stringi  1.1.1  1.1.2  CRAN 

這可能是一個有點誤導,因爲(?package_deps

A ‘print()’ method identifies mismatches (if any) between local and CRAN versions of each dependent package;

這意味着要獲得你需要直接打印p$package依賴性的完整列表:

p$package 
[1] "assertthat" "base64enc"  "BH"   "BiocInstaller" 
[5] "bitops"  "brew"   "caTools"  "colorspace" 
[9] "covr"   "crayon"  "curl"   "devtools"  
[13] "dichromat"  "digest"  "doParallel" "evaluate"  
[17] "foreach"  "formatR"  "ggplot2"  "git2r"   
[21] "gmailr"  "gridBase"  "gtable"  "highr"   
[25] "htmltools"  "httr"   "hunspell"  "igraph"  
[29] "irlba"   "iterators"  "jsonlite"  "knitr"   
[33] "labeling"  "lazyeval"  "lintr"   "magrittr"  
[37] "markdown"  "memoise"  "mime"   "munsell"  
[41] "NMF"   "openssl"  "pkgmaker"  "plyr"   
[45] "praise"  "R6"   "RColorBrewer" "Rcpp"   
[49] "registry"  "reshape2"  "rex"   "rmarkdown"  
[53] "rngtools"  "roxygen2"  "rstudioapi" "rversions"  
[57] "scales"  "stringdist" "stringi"  "stringr"  
[61] "testthat"  "tibble"  "whisker"  "withr"   
[65] "xml2"   "xtable"  "yaml"  
相關問題