从Install.Packages()捕获错误/警告 - R

时间:2015-12-30 05:02:04

标签: r try-catch

我正在尝试在R中使用tryCatch来捕获install.packages()的警告消息,并将其替换为我自己的,但是,似乎有些问题。

这是我做的,

tryCatch({
          install.packages("pkg1")
         },
error=function(e)e,

warning=function(w)w
)

但是,当我运行它时,无论我的tryCatch努力如何,都会弹出默认消息。

输出:

Installing package into ‘\\psf/Home/Documents/R/win-library/3.2’
(as ‘lib’ is unspecified)
Warning in install.packages :
package ‘pkg1’ is not available (for R version 3.2.3)

问题1:如何强制install.packages在tryCatch中使用我的消息?

问题2:如何阻止install.packages等命令从回显消息发送到控制台?

更新:执行和警告/错误状态后,ew中没有值。

更新2 :从下面的评论中,我认为在R中查看tryCatch的实际示例并不错。在下面的示例中,我们必须从“components / testfile.R”中获取文件。但是,由于拼写错误(在camponent中),它无法打开文件,因此会抛出我们可以捕获的警告错误。见下文。

tryCatch({source("camponents/testfile.R")},warning=function(w)w)

执行上述代码后,将发出'source'命令的标准警告消息,如下所示:

  

文件中的simpleWarning(文件名,“r”,编码=编码):无法打开文件'camponents / testfile.R':没有这样的文件或目录>

我希望install.packages()中出现这种行为。但是,它并没有这样做。 感谢。

0 个答案:

没有答案