找不到对象“ pkgInfo”,r

时间:2018-08-22 13:03:30

标签: r ggplot2 r-caret

我正在尝试运行过去几天运行良好的脚本,但是最近让我感到非常沮丧。

当我尝试加载插入符号库时,它表示ggplot2存在问题。输出如下:

> library(caret)
Loading required package: lattice
Loading required package: ggplot2
Error: package or namespace load failed for ‘ggplot2’ in loadNamespace(i, c(lib.loc, .libPaths()), versionCheck = vI[[i]]):
 object 'pkgInfo' not found
Error: package ‘ggplot2’ could not be loaded

我不知道pkgInfo是什么。该问题的其他StackOverflow问题答案是,由于代码中未使用引号,导致R认为它正在寻找名为pkgInfo的对象。但是在这种情况下,错误来自内部...

... ggplot2的源代码。 (也许,我不知道,这不是我的代码直接导致了我所知道的错误)我已经运行过install.packages("ggplot", dep = TRUE)并暂时解决了问题,但是我想要一个更长的解决方案。我敢肯定,我昨天尝试过,但今天仍然需要修复。我还想解释一下大家是否可以提供,以便将来避免。谢谢!

> sessionInfo()
R version 3.5.1 (2018-07-02)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows >= 8 x64 (build 9200)

Matrix products: default

locale:
[1] LC_COLLATE=English_United States.1252  LC_CTYPE=English_United States.1252    LC_MONETARY=English_United States.1252
[4] LC_NUMERIC=C                           LC_TIME=English_United States.1252    

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

other attached packages:
[1] lattice_0.20-35

loaded via a namespace (and not attached):
 [1] compiler_3.5.1  backports_1.1.2 magrittr_1.5    rprojroot_1.3-2 htmltools_0.3.6 tools_3.5.1     yaml_2.2.0     
 [8] Rcpp_0.12.18    stringi_1.1.7   rmarkdown_1.10  grid_3.5.1      knitr_1.20      stringr_1.3.1   digest_0.6.15  
[15] evaluate_0.11  

2 个答案:

答案 0 :(得分:1)

我认为它是插入符,因为插入符是很多R包的包装,因此插入符在R,如果确实这样做,插入符将需要安装很多软件包。

https://cran.r-project.org/web/packages/caret/vignettes/caret.html

您可以通过以下方式强制使用

install.packages("caret", dependencies = c("Depends", "Suggests"))

下面的幻灯片(由Max Kuhn和Zachary Deane-Mayer撰写)比我能解释的要好得多。

https://www.slideshare.net/sermakarevich/odscbos2015maxkhun-150601094910lva1app6892

在包装说明中 导入部分列出了可能在运行时加载的软件包。 建议是可以使用但不是必需的软件包,“依赖”是在插入符号插入后立即加载的软件包

ggplot2列在插入符号的“依赖”部分下

https://github.com/topepo/caret/blob/master/pkg/caret/DESCRIPTION

答案 1 :(得分:1)

很抱歉发布误导性信息,红鲱鱼。

R的工作目录位于“文档”文件夹中。我的文档文件夹已同步到我的Google驱动器,几天前我注意到Google驱动器工作非常辛苦,在后台占用了一些资源。我看到它尝试同步的许多文件都在R的win-library目录中。我不知道如何真正停止同步子目录,所以从我的google驱动器中删除了该目录,希望它不再造成混乱。我在笔记本电脑上的R。

相反,Google开始更多地处理我的R文件。现在,我已停止将文档文件夹与Google云端硬盘同步,一切运行顺利。