如何在 Ubuntu 18.04 上安装 R

此教程的早期版本由 Melissa Anderson撰写。

介绍

R是一个专门从事统计计算和图形的开源编程语言,受R统计计算基金会的支持,它被广泛用于开发统计软件和执行数据分析。R是一个日益流行的和可扩展的语言,具有活跃的社区,R为特定研究领域提供许多用户生成的包,使其适用于许多领域。

在本教程中,我们将安装 R 并展示如何从官方 全面 R 档案网络 (CRAN)中添加包。

前提条件

要跟随本教程,您将需要一个 Ubuntu 18.04 服务器:

  • 至少 1GB RAM 具有sudo特权的非根用户

要了解如何实现此设置,请遵循我们的 手动初始服务器设置指南或运行我们的 自动脚本

一旦这些先决条件到位,你就准备好开始了。

步骤 1 - 安装 R

由于R是一个快速移动的项目,最新的稳定版本并不总是从Ubuntu的存储库中可用,所以我们将首先添加由CRAN维护的外部存储库。

<$>[注] 注: CRAN 维护其网络中的存储库,但并非所有外部存储库都是可靠的。

让我们先添加相应的 GPG 密钥。

1sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9

当我们运行命令时,我们将收到以下输出:

1[secondary_label Output]
2Executing: /tmp/apt-key-gpghome.4BZzh1TALq/gpg.1.sh --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9
3gpg: key 51716619E084DAB9: public key "Michael Rutter <[email protected]>" imported
4gpg: Total number processed: 1
5gpg:               imported: 1

一旦我们有信任密钥,我们可以添加存储库。

请注意,如果你不使用 18.04,你可以从 R Project Ubuntu 列表中找到相应的存储库,以每个版本命名。

1sudo add-apt-repository 'deb https://cloud.r-project.org/bin/linux/ubuntu bionic-cran40/'

在显示的输出中,您应该识别类似于以下的行:

1[secondary_label Output]
2...
3Get:4 https://cloud.r-project.org/bin/linux/ubuntu bionic-cran40/ InRelease [3626 B]                          
4...                    
5Get:22 https://cloud.r-project.org/bin/linux/ubuntu bionic-cran40/ Packages [20.4 kB]
6...

现在,我们需要在此之后运行更新,以便从新存储库中包含包宣言。

1sudo apt update

在输出中应该有一条类似于以下的线条:

1[secondary_label Output]
2...
3Hit:1 https://cloud.r-project.org/bin/linux/ubuntu bionic-cran40/ InRelease
4...

如果上面的行出现在更新命令的输出中,我们已经成功地添加了存储库。

在此时刻,我们准备用以下命令安装R。

1sudo apt install r-base

如果被提示确认安装,请按y继续。

截至写作时,CRAN 的最新稳定版本为 4.0.1,当您启动 R 时显示。

由于我们计划为系统上的每个用户安装一个示例包,我们将以 root 启动 R,以便图书馆自动向所有用户开放。

1sudo -i R
 1[secondary_label Output]
 2
 3R version 4.0.0 (2020-04-24) -- "Arbor Day"
 4Copyright (C) 2020 The R Foundation for Statistical Computing
 5Platform: x86_64-pc-linux-gnu (64-bit)
 6...
 7Type 'demo()' for some demos, 'help()' for on-line help, or
 8'help.start()' for an HTML browser interface to help.
 9Type 'q()' to quit R.
10
11>

这证实了我们已经成功安装了R并进入了其交互式壳。

步骤 2 — 从 CRAN 安装 R 包

R的优势部分在于其可用的丰富的附加包。为了演示目的,我们将安装 txtplot,一个输出 ASCII 图表的库,其中包括 scatterplot,线程图,密度图,acf 和条形图表:

1install.packages('txtplot')

<$>[注] 注: 以下输出显示将安装该包的位置。

1[secondary_label Output]
2...
3Installing package into /usr/local/lib/R/site-library
4(as lib is unspecified)
5. . .

这个全站路径是可用的,因为我们运行了R作为根,这是使包可供所有用户使用的正确位置。

安装完成后,我们可以加载txtplot:

1library('txtplot')

如果没有错误消息,图书馆已成功加载,现在让我们用一个示例来示范用轴标签的基本拼图功能。由R的数据集包提供的示例数据包含(基于20世纪20年代的数据,汽车的速度和停止所需的距离):

1txtplot(cars[,1], cars[,2], xlab = 'speed', ylab = 'distance')
 1[secondary_label Output]
 2      +----+-----------+------------+-----------+-----------+--+
 3  120 +                                                   *    +
 4      |                                                        |
 5d 100 +                                                   *    +
 6i     |                                    *                *  |
 7s 80 +                          *         *                   +
 8t     |                                       * *    *    *    |
 9a 60 +                          *  *      *    *      *       +
10n     |                        *         * *  * *              |
11c 40 +                *       * *    *  *    * *              +
12e     |         *      *  * *  * *  *                          |
13   20 +           *    *  * *       *                          +
14      |  *      *    *                                         |
15    0 +----+-----------+------------+-----------+-----------+--+
16           5 10 15 20 25   
17                                speed

如果您有兴趣了解更多关于txtplot的信息,请从R翻译器中使用帮助(txtplot)

任何预编译的软件包都可以从 CRAN 安装使用 install.packages(). 有关可用软件的更多信息,您可以通过 Available CRAN Packages By Name list找到由名称组成的官方软件包列表。

要退出 R,您可以键入 q(). 除非您想要保存工作区图像,否则在提示时可以按 n

结论

随着 R 成功安装在您的服务器上,您可能对 安装 RStudio 服务器的本指南感兴趣,以便将 IDE 带到您刚刚完成的基于服务器的部署中。

有关如何通过利用不同的工具来安装 R 包的更多信息,您可以阅读如何直接从 GitHub、BitBucket 或其他位置安装(https://andsky.com/tech/tutorials/how-to-install-r-packages-using-devtools)。

Published At
Categories with 技术
comments powered by Disqus