R - 如何做Python尝试除外

时间:2011-12-01 12:14:21

标签: r exception

我开始使用R.虽然我更习惯于python。

我想在R中使用库MASS做一个脚本。我想做一个尝试,除了看看图书馆是否存在,否则安装它 像这样:

Try:
    library("MASS")
Except SomeError:
    install.packages("MASS")
    library("MASS")

或许在R中这没有多大意义 无论如何,欢迎任何建议:)

1 个答案:

答案 0 :(得分:12)

函数require实际上与library完全相同,只是它返回一个逻辑值。

> x <- require("MASS")
> x
[1] TRUE

> x <- require("notExist")
Loading required package: notExist
Warning message:
In library(package, lib.loc = lib.loc, character.only = TRUE, logical.return = TRUE,  :
  there is no package called 'notExist'
> x
[1] FALSE

这意味着您可以使用简单的if语句,例如:

if(!require("MASS")) install.packages("MASS")

R还有一个错误捕获机制。在?try?tryCatch

了解相关信息
相关问题