5

我在新的 Mac 上安装了 R (2.15.1) 和 RStudio (0.96.316)。现在,每次我获取 R 脚本时,都会收到以下警告消息。不管剧本长什么样。在下一个案例中,我只使用了一个 cat('Hello World) 参数。

> source('~/Documents/R-Files/skript.r')
Hello World

Warnmeldung:
In eval.with.vis(ei, envir) :
  .Internal(eval.with.vis) should not be used and will be removed soon

我总是收到与我的代码行相同数量的警告。具有四行输入的脚本会产生四个警告:

> source('~/Documents/R-Files/skript.r')
a Hello World
b Hello World
c Hello World
d Hello World

Warnmeldungen:
1: In eval.with.vis(ei, envir) :
  .Internal(eval.with.vis) should not be used and will be removed soon
2: In eval.with.vis(ei, envir) :
  .Internal(eval.with.vis) should not be used and will be removed soon
3: In eval.with.vis(ei, envir) :
  .Internal(eval.with.vis) should not be used and will be removed soon
4: In eval.with.vis(ei, envir) :
  .Internal(eval.with.vis) should not be used and will be removed soon

但是,除了警告消息之外,R 脚本也可以正常工作。

我在R News上找到了以下信息:

  • source() 现在使用 withVisible() 而不是 .Internal(eval.with.vis)。这有时会稍微改变回溯。

我认为这是我的问题的原因,但我不知道解决方案。如何禁用或避免警告?

4

2 回答 2

8

调试示例:“eval.with.vis”警告(此案例 XML 库,您的案例,任何库)

在 2.15.1 升级后的 Mac 上,我通过使用二进制搜索发现问题出在 XML 库中。

当我注释掉这个语句时: library("XML") 警告消失了。

我将此追溯到我使用 CRAN 的二进制 XML 库的事实。

当我从源重新安装库时(通过使用 R gui App 菜单选择“Packages and Data->Package Installer”并使用左上角下拉菜单并选择“CRAN(Sources)”),R 应用程序从源代码重建库。

在此之后,警告不再存在。

我建议您也确定您的哪个库正在使用“eval.with.vis”已弃用的代码,然后尝试从源代码重新编译它以确保您拥有最新版本。如果这不起作用,您可以更改源代码本身以使用当前版本“withVisible”。

我浪费了三个小时来追踪这个错误。

如果有人知道重新安装所有库的自动方法,然后手动查找导致警告的库,然后从源代码半自动重新安装有问题的库,那就太好了。

祝大家好运!

于 2012-09-10T16:34:58.553 回答
0

我在下面的部分会话信息下发现了同样的问题,以及与 library("foreign") 相同的成功解决方案(重新安装包)。

  • R 版本 2.15.2 (2012-10-26)
  • 平台:x86_64-apple-darwin9.8.0/x86_64(64位)
  • RStudio 0.97.248

感谢您提供此解决方案。

于 2013-01-18T21:19:18.570 回答