介绍
一个流行的开源编程语言,R专注于统计计算和图形。它被广泛用于开发统计软件和执行数据分析。R社区以不断地为特定研究领域添加用户生成的包而闻名,这使得它适用于许多领域。
在本教程中,我们将讨论如何安装 devtools,并使用它直接从GitHub安装R包。
前提条件
要跟随本教程,您将需要一个 Ubuntu 18.04 服务器:
- minimum 1GB RAM
- a 非根用户与‘sudo’特权
- R安装,通过遵循 本R安装指南的第一步
一旦这些先决条件到位,你就准备好开始了。
步骤 1 — 安装 devtools 的系统依赖
我们将从交互式壳中安装 devtools,但在我们这样做之前,我们需要安装这些系统依赖:
1sudo apt 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[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] ‘1.1.0.9000’
在下一步,我们将快速查看Shiny,我们需要先完成一些系统级别的任务,所以我们将使用以下命令或使用CTRL-D离开显示器:
1q()
其中任何一个都将提示您保存您的工作空间图像,R的工作环境,其中包括用户定义的对象。
由于我们将使用网页浏览器来看看Shiny能做些什么的例子,我们将确保允许网页流量。
检查防火墙
Shiny是一个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,这一次作为一个常规用户. 请确保键入R
作为标题案例。
1R
接下来,我们将加载Shiny包:
1library("shiny")
Shiny 包含 11 个内置示例,展示了它是如何工作的。我们将加载库,然后运行第一个示例. 因为我们在远程服务器上工作,我们将指定主机地址,以便从本地机器浏览。
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:
我们安装了Shiny,以说明使用 devtools 直接从GitHub存储库安装,然后我们运行了Shiny应用程序的示例,没有增加特权,以验证所有用户都有访问该包。
重新安装 Shiny 的稳定版本
对于生产情况,我们会从CRAN安装,除非我们有强有力的理由从库中安装。
首先,我们将中断服务器用CTRL
+C
,然后用CTRL
+D
退出R壳并重新输入为根:
1sudo -i R
我们可以使用以下命令安装稳定版本,这将重写我们在上一步完成的GitHub安装。
1install.packages("shiny")
让我们检查版本中的变化:
1packageVersion("shiny")
1[secondary_label Output]
2[1] ‘1.1.0’
输出表明,而不是我们从GitHub安装的版本1.1.0.9000
,我们现在正在运行稳定版本。
<$>[注] 注: 我们还可以从系统命令行中从其 DESCRIPTION 文件中找到有关包的版本的更多信息。
1cat /usr/local/lib/R/site-library/shiny/DESCRIPTION
美元
结论
在本教程中,我们直接从GitHub安装了最新的Shiny包,并学会了如何从CRAN重新安装其稳定版本。
如果您有兴趣了解更多关于 Shiny 的信息,您可以参阅 RStudio 的 Shiny 教程,您也可能对 安装开源 RStudio Server感兴趣,这是一种在远程 Linux 服务器上运行的 R 版本的接口,这将 IDE 带入基于服务器的部署。