如何在 Ubuntu 16.04 上使用 devtools 安装 R 软件包

介绍

R 是一个流行的开源编程语言,专注于统计计算和图形。它被广泛用于开发统计软件和执行数据分析。R 易于扩展,社区以不断为特定研究领域添加用户生成的包而闻名,这使得它适用于许多领域。

在本教程中,我们将向您展示如何安装 devtools 并使用它直接从 GitHub 安装包。

前提条件

要跟进,你需要R,安装在Ubuntu 16.04服务器上,至少有1GB的RAM,以及具有sudo特权的非根用户。

步骤 1 — 安装 devtools 的系统依赖

我们将从交互式壳中安装 devtools,但在我们之前,我们需要安装这些系统依赖:

1sudo apt-get install build-essential libcurl4-gnutls-dev libxml2-dev libssl-dev

一旦完成,我们准备继续前进。

步骤 2 – 安装 Devtools 包

Devtools 将使我们能够直接从 GitHub、BitBucket、本地文件安装和构建包,以及从 CRAN 安装特定版本。

1sudo -i R

从显示器内部,我们将使用install.packages()函数来安装devtools从官方全面R档案网络(CRAN)中。

1install.packages('devtools')

当被提示时,我们将选择 1 for 0-Cloud,将我们连接到RStudio提供的内容交付网络(CDN),以获得最接近地理的镜子。在进行选择后,安装将开始。

1[secondary_label Output]
2...
3** testing if installed package can be loaded
4* DONE (devtools)

接下来,我们将测试它,当我们直接从GitHub上收集并构建一个项目时。

步骤 3 — 从 GitHub 安装 R 包

在此步骤中,我们将直接从GitHub安装Shiny的最新开发构建,这是R的Web应用框架,我们将使用devtools提供的install_github函数来做到这一点。GitHub包由其作者(rstudio)和其名称(shiny)定义,您可以从主要项目页面的GitHub URL找到:https://github.com/rstudio/shiny`。

使用以下命令来安装:

1devtools::install_github('rstudio/shiny')

安装已成功完成,当我们看到接近结尾的下列行并返回R提示:

1[secondary_label Output]
2. . .
3** testing if installed package can be loaded
4* DONE (shiny)
5>

我们可以看到我们用以下命令安装的 Shiny 的特定版本:

1packageVersion("shiny")
1[secondary_label Output]
2[1] ‘0.14.0.9000’

在下一步,我们将快速查看Shiny,我们需要先完成一些系统级别的任务,所以我们将使用以下命令或使用CTRL-D离开显示器:

1q()

其中任何一个都将提示您保存您的工作空间图像,R的工作环境,其中包括用户定义的对象。

由于我们将使用网页浏览器来看看Shiny能做些什么的例子,我们将确保允许网页流量。

检查防火墙

Shiny 是一个 Web 应用程序框架,所以为了在浏览器中查看其示例,我们需要确保在我们的防火墙上允许 Web 流量。内置的 Web 服务器在每次启动时随机选择一个端口,除非它以特定值启动。

让我们来看看防火墙的状态:

1sudo ufw status

在这种情况下,只有通过SSH才允许:

1[secondary_label Output]
2Status: active
3
4To Action From
5--                         ------      ----
6OpenSSH ALLOW Anywhere
7OpenSSH (v6)               ALLOW Anywhere (v6)

由于在这种情况下仅允许SSH流量,我们将添加端口4040并在完成后检查状态:

1sudo ufw allow 4040/tcp
2sudo ufw status
1[secondary_label Output]
2Status: active
3
4To Action From
5--                         ------      ----
6OpenSSH ALLOW Anywhere
74040/tcp ALLOW Anywhere
8OpenSSH (v6)               ALLOW Anywhere (v6)
94040/tcp (v6)              ALLOW Anywhere (v6)

随着防火墙的配置,我们准备好看看Shiny。

光明的跑步:

我们将连接到R,这次作为常规用户:

1R

接下来,我们将加载shiny:

1library("shiny")

Shiny 包含 11 个内置示例,展示了它是如何工作的。我们将加载shiny库,然后运行第一个示例. 因为我们在远程服务器上工作,我们将指定主机地址,以便从本地机器浏览。

1runExample("01_hello", host = "203.0.113.0", port = 4040, launch.browser= FALSE)
1[secondary_label Output]
2Listening on http://203.0.113.0:4040

让我们在 Web 浏览器中访问此 URL:

Screenhot of Shiny's 01-Hello example

我们安装了Shiny,以说明使用devtools直接从GitHub存储库安装,然后我们运行了Shiny应用程序的示例,没有增加特权,以验证所有用户都有访问该包。

重新安装 Shiny 的稳定版本

对于生产情况,我们会从CRAN安装,除非我们有强有力的理由从库中安装。

首先,我们将用 CTRL-C 中断服务器,然后用 CTRL-D 退出 R 壳并重新输入为根:

1sudo -i R

由于我们离开了壳,我们将被要求选择一个镜子,我们将再次选择1。

我们可以使用以下命令安装稳定版本,这将重写我们在上一步完成的GitHub安装:

1install.packages("shiny")

让我们检查版本中的变化:

1packageVersion("shiny")
1[secondary_label Output]
2[1] ‘0.14’

输出表明,而不是我们从GitHub安装的版本0.14.9000,我们现在正在运行稳定版本。

<$>[注] 注: 我们还可以从系统命令行中从其 DESCRIPTION 文件中找到有关包的版本的更多信息。

1cat /usr/local/lib/R/site-library/shiny/DESCRIPTION

美元

结论

在本教程中,我们直接从 GitHub 安装了最新 Shiny 包,并了解如何从 CRAN 重新安装其稳定版本. 如果您有兴趣了解更多关于 Shiny 本身的信息,您可能想看看 RStudio 的 Shiny 教程

Published At
Categories with 技术
comments powered by Disqus