R官方入门教程(13)包

R是一门著名的可用于数据和统计分析的程序语言,本文翻译自R软件官方文档教程An Introduction to R,仅供学习和参考。

13 包

所有 R 函数和数据集都存储在package(包)中。只有当一个包被加载时,它的内容才可用。这样做既是为了提高效率(与子集相比,完整列表将占用更多内存并且搜索时间更长),也是为了帮助包开发人员,避免与其他代码发生名称冲突。在这里,我们将从用户的角度来描述包。

要查看您的站点上安装了哪些包,请发出命令

> library()

加载特定包(例如,boot(https://CRAN.R-project.org/package=boot) 包含 Davison & Hinkley (1997)编写的一些函数),使用如下命令

> library(boot)

连接到互联网的用户可以使用 install.packages()update.packages() 函数(可通过 Windows 和 macOS GUI 中的“package”菜单获得)来安装和更新包.

要查看当前加载了哪些包,请使用

> search()

显示搜索列表。某些包可能已加载但在搜索列表中不可用:它们将包含在由

> loadedNamespaces()

要查看已安装包中所有可用帮助主题的列表,请使用

> help.start()

来启动 HTML 帮助系统,然后导航到“Reference”部分中的包列表

13.1 标准包

标准(base)包被视为 R 源代码的一部分。它们包含允许 R 工作的基本函数,以及本手册中描述的数据集和标准统计和图形函数。它们应该在任何 R 安装中自动可用。有关完整列表,请参阅 R FAQ 中的“R packages”部分。

13.2 贡献包和CRAN

有数以千计的 R 贡献包,由许多不同的作者编写。其中一些软件包实现了专门的统计方法,另一些提供了对数据或硬件的访问权限,还有一些旨在补充教科书。一些(推荐的包)随 R 的每个二进制发行版一起分发。大多数都可以从 CRAN(https://CRAN.R-project.org/ 及其镜像)和其他存储库(例如 Bioconductor(https:// www.bioconductor.org/)。 R FAQ包含发布时最新的 CRAN 包列表,但可用包的集合变化非常频繁。

13.3 命名空间

包有命名空间,它做三件事:它们允许包编写者隐藏仅供内部使用的函数和数据;当用户(或其他包编写者)选择一个与包中的名称冲突的名称时,它们防止函数被破坏;它们提供了一种在特定包中引用对象的方法。

例如,t() 是 R 中的转置函数,但用户可以定义自己的名为 t 的函数。命名空间阻止用户的定义优先,并破坏试图转置矩阵的每个函数。

有两个运算符可以处理命名空间。双冒号运算符 :: 从特定名称空间中选择定义。在上面的示例中,转置函数将始终作为 base::t 提供,因为它是在基础包中定义的。不过这种方式只能访问包中的函数。

三冒号运算符 ::: 可能会在 R 代码中的几个地方看到:它的作用类似于双冒号运算符,但也允许访问隐藏的对象。用户更有可能使用 getAnywhere() 函数,该函数搜索多个包。

包通常是相互依赖的,加载一个包可能会导致自动加载其他包。上面描述的冒号运算符也会导致相关包的自动加载。当自动加载带有命名空间的包时,它们不会添加到搜索列表中。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值