在R中,当你想加载一个库时,例如调用一个foo,命令是
library(foo)
Run Code Online (Sandbox Code Playgroud)
此呼叫是否有返回值表示成功/失败?我想使用如下
if library(foo) != 1:
install.packages("foo")
Run Code Online (Sandbox Code Playgroud)
谢谢
来自以下Value部分?library:
通常,库返回(不可见)附加包的列表,但如果logical.return为TRUE则返回TRUE或FALSE.当作为library()调用时,它返回类"libraryIQR"的对象,对于库(help =),返回类"packageInfo"之一.
所以在你的情况下,你可以这样做:
if (!library(foo, logical.return = TRUE))
install.packages("foo")
Run Code Online (Sandbox Code Playgroud)