包车无法加载,错误的版本nlme

时间:2016-02-17 22:52:28

标签: r nlme r-car

当我尝试加载' car'包我收到这个错误:

library(car)

Error in loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = vI[[j]]) : 
  namespace 'nlme' 3.1-122 is already loaded, but >= 3.1.123 is required
Error: package or namespace load failed for 'car'

但是当我运行update.packages()时,没有什么可以更新的。如果重要,我会使用MRO 3.2.3。

2 个答案:

答案 0 :(得分:4)

我遇到了同样的问题,只需从https://cran.r-project.org/src/contrib/Archive/nlme/

安装nlme_3.1-123.tar.gz即可解决问题

答案 1 :(得分:2)

问题的最终原因很可能是MRO defaults to a static repository

  

默认情况下,Microsoft R Open使用静态CRAN快照日期为其用户提供可预测性。例如,Microsoft R Open 3.2.3的CRAN存储库配置为指向2016年1月1日的快照日期。因此,使用Microsoft R Open 3.2.3,您将始终获得包,因为它们是在1月的UTC午夜默认情况下,每当您使用install.packages时,都是2016年。

     

使用固定的CRAN存储库快照意味着Microsoft R Open的每个用户都可以访问同一组CRAN软件包版本。这使得共享R代码更容易依赖于R包,并减少了在同一系统上安装不兼容的R包的可能性。了解有关固定CRAN存储库快照的更多信息。

尝试

install.packages("nlme",repos="http://cran.r-project.org")

或可能

install.packages("nlme",repos="http://cran.r-project.org",type="binary")

(如果您收到type == "both" cannot be used ...错误)。

新版推荐软件包的另一个可能问题是,可能在系统级软件包目录中安装旧版本,而新版本安装在用户级目录中;检查

的结果
sapply(.libPaths(),packageVersion,pkg="nlme") 

并考虑在lib=.libPaths()[2]来电中添加install.packages()之类的内容。