无法在R中加载软件包
问题描述:
从昨天开始,我无法加载一些常用的软件包,例如reshape2
和stringr
通过库命令。无法在R中加载软件包
步骤重现我的问题:
1)开始在Rstudio服务器的新会话(版本0.99.467)。我也杀死了Rstudio服务器中的活动会话。
2)运行这些代码
library(ggplot2)
library(stringr)
3)获取的错误消息:
错误unloadNamespace(包): 命名空间 'stringr' 由 'reshape2' 进口所以不能卸载 显示回溯
重新运行调试
库(stringr)中的错误:“stringr”版本0.6.2无法卸载。
但是,如果stringr
在ggplot2
之前加载,我不会收到错误。我应该如何解决这个问题。感谢您的任何建议。
我可能需要更新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
答
我通过更新R和所有的R包解决了我的问题。
我想这个问题是由旧版本的stringr或reshape2造成的,因为我在不同的地方安装了相同的软件包(系统文件夹或个人库)。 R试图加载一个旧版本的软件包。
答
尽管为我更新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)
即使问题解决了,我希望它能帮助别人。
你是否在新的R会话中获得这些消息?奇怪的是,当您尝试加载命名空间时,错误来自“unloadNamespace”。你确定它们在运行之前还没有被加载?在此之前还有其他的命令吗? – MrFlick
我已经缩小了我的问题,并会编辑我的问题。 – Bangyou
为什么“stringr”版本0.6.2当1.0.0版本可用时在cran – MLavoie