无法在R中加载软件包

7

从昨天开始,我无法通过library命令加载一些常用的包,例如reshape2stringr

重现我的问题的步骤:

1)在Rstudio server(版本0.99.467)中启动一个新会话。我还关闭了Rstudio server中的活动会话。

2)运行以下代码

library(ggplot2)
library(stringr)

3) 出现错误信息:

Error in unloadNamespace(package) : namespace ‘stringr’ 被 ‘reshape2’ 导入,因此无法卸载 Show Traceback

使用Debug重新运行

Error in library(stringr) : “stringr” 版本0.6.2 无法被卸载。

但是如果在加载 ggplot2 之前加载 stringr,则不会出现错误。我该如何解决这个问题。感谢您的任何建议。

我可能需要更新R到3.2版

我的R会话信息:

R version 3.1.3 (2015-03-09)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu precise (12.04.5 LTS)

locale:
 [1] LC_CTYPE=en_AU.UTF-8       LC_NUMERIC=C               LC_TIME=en_AU.UTF-8        LC_COLLATE=en_AU.UTF-8    
 [5] LC_MONETARY=en_AU.UTF-8    LC_MESSAGES=en_AU.UTF-8    LC_PAPER=en_AU.UTF-8       LC_NAME=C                 
 [9] LC_ADDRESS=C               LC_TELEPHONE=C             LC_MEASUREMENT=en_AU.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] ggplot2_1.0.0

loaded via a namespace (and not attached):
 [1] colorspace_1.2-4 digest_0.6.4     grid_3.1.3       gtable_0.1.2     MASS_7.3-39      munsell_0.4.2    plyr_1.8.1      
 [8] proto_0.3-10     Rcpp_0.11.2      reshape2_1.4     scales_0.2.4     stringr_0.6.2    tools_3.1.3    

2
您在全新的 R 会话中收到这些消息吗?当您尝试加载命名空间时,出现 "unloadNamespace" 错误似乎有些奇怪。您确定在运行此操作之前它们还没有被加载吗?您在此之前运行了其他命令吗? - MrFlick
我已经缩小了问题的范围,并将编辑我的问题。 - Bangyou
为什么在CRAN上已经有1.0.0版本的“stringr”,却还在使用0.6.2版本? - MLavoie
我认为我已经通过更新到3.2版本并重新安装所有软件包解决了我的问题。 - Bangyou
你应该将其发布为解决方案并标记为正确,这可能会在未来帮助其他人。 - Mike Wise
2个回答

4

我通过更新R和所有的R包来解决我的问题。

我猜测这个问题是由于stringr或reshape2的旧版本引起的,因为我在不同的位置安装了相同的软件包(系统文件夹或个人库)。 R尝试加载旧版本的软件包。


0
尽管更新R是一个好习惯,但对于我来说,并不需要解决同样的问题。问题可能来自于几个code>.libPaths()。使用.libPaths("C:/Program Files/R/R-3.4.3patched/library"),您可以指出一个文件夹。之后只需要重新安装软件包,就应该可以工作了。 我的代码:
> .libPaths()

[1] "L:/My Documents/R/win-library/3.4"         "C:/Program Files/R/R-3.4.3patched/library"

> .libPaths("C:/Program Files/R/R-3.4.3patched/library")

> packages<-c('ggplot2','data.table','knitr','xtable')

> install.packages(packages)
> lapply(packages,library,character.only=T)

尽管这个问题已经解决了,但我希望它能对某些人有所帮助。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接