R中的包


2022年4月13日, Learn eTutorial
2385

在本教程中,我们将深入探索R编程语言。我们将讨论如何在我们的操作系统中安装R包。您还将学习R中的不同包、它们的用途以及如何在R中加载这些包。

在本教程中,您将学习

  • 如何安装R包 
  • 如何检查包
  • 如何加载包 
  • 包列表
  • 如何使用R包 

等等...

什么是R包?

在R编程语言中,R包构成了可共享代码的基本单元。一个R包是一个包含代码、数据、文档和测试的集合。R包最棒的地方在于它可以很容易地与他人共享。用户可以从一个名为 CRAN 的集中式存储库安装这些R包。CRAN 是 Comprehensive R Archive Network 的缩写。R在数据科学、机器学习等新兴领域的成功使用,主要原因之一是 CRAN 中提供了各种各样的包。

R包存储在R环境中的一个名为 “library” 的目录中。在R安装过程中,默认会安装一组包。当用户开始使用RStudio时,只有这些默认包可用。除了默认包之外的一些包需要用户加载到R程序中才能有效地使用。

这些R包存储在哪里?

R包存储在软件仓库中。软件仓库是存储、管理和维护包集合的存储位置。这些仓库可以在线访问,公众或用户或任何人都可以根据他们的需求从这些仓库安装R包。

一些提供R包的软件仓库包括

  • CRAN
  • MRAN 和 RStudio 包管理器
  • Bioconductor
  • R-Forge
  • Github
sw repositories img

让我们分别考虑每个仓库及其性能。它们之间有什么不同?

软件仓库 描述
CRAN
  • Comprehensive R Archive Network 是R包的官方仓库。
  • R基金会支持的最早和最新的R包存档。
  • 它包含源代码包,以支持用户编写的代码集合以执行某些特定操作。
  • 它包括Windows和macOS的预编译二进制文件。
  • CRAN通过提供超过16,000个R包来支持R程序员。
  • 此报告截至2020年11月。
  • 所有类型的包都可用。
MRAN 和 RStudio 包管理器
  • Microsoft R Application Network (MRAN)
  • 由微软维护
  • 它是CRAN的一个镜像。
Bioconductor
  • 它包含支持数据分析的R包。
  • 主要用于处理面向对象的数据处理。
R-Forge
  • 它是一个中央平台。
  • 它包括用于R相关项目协作开发的包。

R包和库之间有什么区别?

在R中,函数、数据和编译代码的集合构成一个包。库是这些R包的存储位置。R包通过从某些软件仓库(CRAN、GitHub等)下载并存储在库中安装到您的系统中。包安装后,为了在您的代码中可用,需要使用命令或函数 library(package name) 加载包。(将在本教程中详细讨论)

difference img

如何安装R包?

在RStudio中,R包是支持某些分析的命令或库的集合。在RStudio中安装包很容易,可以通过多种方式完成:

  • 使用函数安装 
  • 使用RStudio用户界面安装。
  • 可以一次安装多个包。

使用函数安装R包

R包可以使用简单的函数手动安装


install.packages()

其中括号内是需要安装的包名,用双引号括起来。假设需要安装calendar包,使用以下命令。


 install.packages("calendR")

截图显示了RStudio控制台,其中包含install.packages()命令来安装包calendR。您可以安装任何您感兴趣的包。

difference img

如何一次安装多个包?

为了避免在RStudio控制台中反复编写相同的函数来同时安装不同的包,R支持以下语法


install.packages(c("ggplot2", "dplyr"))

安装包的函数 install.packages() 与另一个 c() 函数一起使用,该函数包含要一次安装的多个包的名称。单行函数允许一次安装多个包

如何使用RStudio用户界面安装R包?

按照以下步骤在RStudio中安装R包

  1. 打开RStudio界面。打开窗口中显示的“包”选项卡。
    screenshot img
  2. 从那里点击安装包。
    screenshot img
  3. 假设您要安装一个名为“modeest”的包,它允许使用模式分析程序。在包框中输入“modeest”。然后点击安装。
    screenshot img
  4. 您可以看到该包已在RStudio中下载并安装。
    screenshot img
  5. 在包列表中,您可以查看新安装的包。
    screenshot img
  6. 现在让我们看看如何将这个modeest包加载到我们的程序中。考虑一个简单的程序来查找向量x中的数字列表。使用c()函数创建向量x
    
    x=c(1,2,3,4,4,5)
    
    

    modeest包附带的命令是mfv。mfv()将x作为括号内的参数,找到数字1,2,3,4,5的众数。并返回输出值4。

如何将包加载到R程序中?

通过控制台中的函数或借助GUI菜单选项下载包后,所需的R包就会被安装。下一步是在R程序中使用这些R包。为了使用已安装的R包,您需要加载该包。

您可以使用library()函数加载包。该函数将要加载的包名包含在引号内或不包含引号。


library(calendR)
OR
library(“calendar”)

如何检查已安装的R包?

加载后,您可以使用R控制台中的“help”或“?”来检查已加载的包。这进一步有助于获取与任何特定包名相关的所有文档,包括其描述、包遵循的语法、每个函数中的参数或参数的定义等等。


?(<name of package>)
Or
 help(<name of package>)

示例


?calendR
help(calendR)   or  help(“calendR”)   

如何卸载R包?

要从库中删除包,请单击右侧的 ×(叉号)标记。
将鼠标悬停在 ×(叉号)上时,会显示“删除包”消息。删除的包将不再在R库中。

uninstall img

如何在R中更新包?

为了修改操作和改进功能,R包有时会更新。

建议偶尔更新R包。您可以使用RStudio中“包”面板工具栏中的“更新”按钮来更新R包。

screenshot img

RStudio会验证需要更新的R包,并将其显示在一个对话框中,如下所示

screenshot img

从GitHub安装R包

在从GitHub安装R包之前,您需要检查 devtools 包是否可用。您可以使用R控制台中的函数 library(devtools) 进行检查。如果devtools已安装,则不会弹出任何消息;如果不存在此类包,则会显示一条消息,显示

Error in library(devtools) : there is no package called ‘devtools’.

如果不存在devtools包,请使用函数 install.packages(“devtools”) 或在RStudio界面中使用 tools -> install packages -> packages

screenshot img

通过上述两种方式之一安装devtools后,输入 install_github 函数,并将 "account_name/repository_name" 作为参数,从GitHub安装R包。

考虑以下示例


# Installing ggplot2 from GitHub
install_github("tidyverse/ggplot2")