簡體   English   中英

較新的R版本不會加載較早的軟件包

[英]Newer version of R does not load older packages

關於軟件包VIMGUI我有一些問題。 當我嘗試使用它時,警告如下所示:

Loading required package: data.table
Error in load Namespace(i, c(lib.loc, .libPaths()), versionCheck = vI[[i]]) : 
  there is no package called ‘stringi’
In addition: Warning messages:
1: package ‘VIM’ was built under R version 3.1.2 
2: package ‘data.table’ was built under R version 3.1.1 
Error: package ‘data.table’ could not be loaded

當我嘗試安裝data.table ,錯誤如下所示:

package ‘data.table’ is not available (for R version 3.1.0)

如果被告知R 3.1.0是最新的,那么您使用的鏡像比當前版本晚1年,建議您使用的鏡像是3.2.0。 此外,pkg:data.table的當前版本是github上的1.9.5,它說它只要求“ R> = 2.14.0”,所以為什么鏡像會給你一個錯誤是一個完全的謎。 次要版本(例如,從3.1.0到3.1.2或3.1.3)中R的更新通常是不費吹灰之力的,並且可以避免像“ VIM軟件包”這樣的輕率警告(注意: 不是錯誤)。是根據R版本3.1.2“構建的。

我也沒有看到為什么data.table為此需要VIM或stringi。 這些軟件包不在“ data.table”的Improts或Depends列表中。 因此,我猜測您還沒有提供許多其他代碼,這些代碼導致加載data.table嘗試失敗。

更新到3.1.3(從比您似乎正在使用的功能更完整的CRAN鏡像獲得。)然后發布sessionInfo()的輸出以及也許的輸出。

(mypacks <- installed.packages()[ , 1:3])

這樣可以告訴您庫中當前有哪些版本,以及是否有多個庫。 我不想發布它,因為對我來說

 > nrow(mypacks)
 [1] 1333

但是對於只安裝了幾個軟件包的用戶,它將為您提供當前版本及其在驅動器上的位置的完整列表。 您還可以發布:

mypacks[ mypacks[, 'Package']  %in% c('data.table', 'stringi', 'VIM') , ]
### Output from my setup:
           Package     
data.table "data.table"
stringi    "stringi"   
VIM        "VIM"       
           LibPath                                                         
data.table "/Library/Frameworks/R.framework/Versions/3.1/Resources/library"
stringi    "/Library/Frameworks/R.framework/Versions/3.1/Resources/library"
VIM        "/Library/Frameworks/R.framework/Versions/3.1/Resources/library"
           Version
data.table "1.9.5"
stringi    "0.4-1"
VIM        "4.0.0"

暫無
暫無

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

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