R语言【base】——使用library判断是否已经安装第三方软件包:library(package, logical.return=TRUE)

Package base version 4.3.2


Parameters

R 复制代码
library(package, help, pos = 2, lib.loc = NULL,
        character.only = FALSE, logical.return = FALSE,
        warn.conflicts, quietly = FALSE,
        verbose = getOption("verbose"),
        mask.ok, exclude, include.only,
        attach.required = missing(include.only))

require(package, lib.loc = NULL, quietly = FALSE,
        warn.conflicts,
        character.only = FALSE,
        mask.ok, exclude, include.only,
        attach.required = missing(include.only))

conflictRules(pkg, mask.ok = NULL, exclude = NULL)

参数【package,help】:软件包的名称,根据参数【character.only】是 FALSE(默认)还是 TRUE,以名称或字面字符串或字符串的形式给出。

参数【pos】:搜索列表中要附加已加载命名空间的位置。也可以是 **search()**给出的当前搜索列表中的位置名称。

参数【lib.loc】:描述要搜索的 R 库树位置的字符向量,或者 NULL。默认值 NULL 对应 .libPaths() 当前已知的所有库。不存在的库树将被忽略。

参数【character.only】:一个逻辑值,表示参数【package,help】是否可以假定为字符串。

参数【logical.return】:逻辑。如果为 TRUE,则返回 FALSE 或 TRUE,表示成功。

参数【warn.conflicts】:逻辑。如果为 TRUE,则会打印有关附加新软件包时发生冲突的警告。冲突是用功能掩盖功能,或用非功能掩盖非功能。默认值为 TRUE,除非在参数【conflicts.policy】中指定为 FALSE。

参数【verbose】:逻辑。如果为 TRUE,则打印额外的诊断信息。

参数【quietly】:为逻辑值。如果为 TRUE,则不会打印确认软件包连接的信息,如果软件包连接失败,通常也不会打印错误/警告信息。

参数【pkg】:字符串,用于命名软件包。

参数【mask.ok】:对象名称的字符向量,在启用严格冲突检查时,这些字符向量可以屏蔽搜索路径上的对象,而不会发出错误信号。

参数【exclude,include.only】:字符向量,包含要排除或包含在附加帧中的对象名称。在调用 libraryrequire时,只能使用其中一个参数。

参数【attach.required】:逻辑,指定是否应自动附加 DESCRIPTION 文件 Depends 子句中列出的所需软件包。


Example

R 复制代码
package <- c("rgbif", "BIEN")

for (p in package){
    if (!library(package=p, logical.return=TRUE, character.only=TRUE)){
        install.packages(p)
        library(package=p, character.only=TRUE)
    } else {
        library(package=p, character.only=TRUE)
    }
}
相关推荐
maplewen.18 小时前
C++11 返回值优化
开发语言·c++·面试
我命由我1234519 小时前
Android Studio - 在 Android Studio 中直观查看 Git 代码的更改
android·java·开发语言·git·java-ee·android studio·android jetpack
hewence119 小时前
Kotlin协程启动方式详解
android·开发语言·kotlin
gihigo199819 小时前
MATLAB运动估计基本算法详解
开发语言·算法·matlab
郝学胜-神的一滴19 小时前
TCP通讯的艺术:从握手到挥手的优雅对话
开发语言·网络·网络协议·tcp/ip·程序人生
黎雁·泠崖19 小时前
【魔法森林冒险】12/14 场景系统:5大场景的任务串联
java·开发语言
l1t19 小时前
在python 3.14 容器中安装和使用chdb包
开发语言·python·clickhouse·chdb
梵刹古音19 小时前
【C++】函数重写
开发语言·c++
民国二十三画生20 小时前
C++(兼容 C 语言) 的标准输入语法,用来读取一行文本
c语言·开发语言·c++