我試圖加載party
庫,並得到了以下錯誤:升級包在R:`update.packages`與`install.packages`
Loading required package: zoo
Error in loadNamespace(i, c(lib.loc, .libPaths()), versionCheck = vI[[i]]) :
namespace ‘lattice’ 0.20-24 is already loaded, but >= 0.20.27 is required
Error: package ‘zoo’ could not be loaded
所以我決定更新中的所有包同一個會話(detach all packages while working in R),包括lattice
,希望zoo
然後party
一旦lattice
進行更新,然後將正確加載:
pkgs <- names(sessionInfo()$otherPkgs)
pkgs <- paste('package:', pkgs, sep = "")
lapply(pkgs , detach, character.only = TRUE, unload = TRUE)
update.packages(checkBuilt=TRUE, ask=FALSE,
repos="http://r-forge.r-project.org",
oldPkgs=c("lattice","zoo","party")
)
它沒有工作(在同一會話中和重起後無覆蓋UT預壓.RData
):
> library(party)
Loading required package: zoo
Error in loadNamespace(i, c(lib.loc, .libPaths()), versionCheck = vI[[i]]) :
namespace ‘lattice’ 0.20-24 is already loaded, but >= 0.20.27 is required
Error: package ‘zoo’ could not be loaded
根據How to update R2jags in R?,最好僅僅需要在我想更新這些軟件包install.packages
,然後重新啓動。事實上它的確有竅門。
所以,這裏的問題是:什麼時候update.packages
要求,鑑於運行會話內的更新是脆弱的至少可以說,並install.package
將執行的代價是重新啓動會話?我缺少什麼R
包管理voodoo?謝謝。