2015-11-05 146 views
4

从昨天开始,我无法加载一些常用的软件包,例如reshape2stringr通过库命令。无法在R中加载软件包

步骤重现我的问题:

1)开始在Rstudio服务器的新会话(版本0.99.467)。我也杀死了Rstudio服务器中的活动会话。

2)运行这些代码

library(ggplot2) 
library(stringr) 

3)获取的错误消息:

错误unloadNamespace(包): 命名空间 'stringr' 由 'reshape2' 进口所以不能卸载 显示回溯

重新运行调试

库(stringr)中的错误:“stringr”版本0.6.2无法卸载。

但是,如果stringrggplot2之前加载,我不会收到错误。我应该如何解决这个问题。感谢您的任何建议。

我可能需要更新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

+0

我已经缩小了我的问题,并会编辑我的问题。 – Bangyou

+0

为什么“stringr”版本0.6.2当1.0.0版本可用时在cran – MLavoie

回答

2

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

我想这个问题是由旧版本的stringr或reshape2造成的,因为我在不同的地方安装了相同的软件包(系统文件夹或个人库)。 R试图加载一个旧版本的软件包。

0

尽管为我更新R是一个很好的做法,但没有必要解决同一个问题。这个问题可能由几个.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) 

即使问题解决了,我希望它能帮助别人。