Skip to main content

如何在 Debian/Ubuntu 上安装 R

本指南介绍如何在您的 Debian 或 Ubuntu 服务器上安装 R 编程语言。R 是一种开源语言,广泛用于开发统计软件、数据分析和可视化。

订购服务器

为了运行 R 和数据分析,HostMyServers 提供多种选择:

前提条件

  • SSH root 访问权限或具有 sudo 权限的用户
  • Debian 11/12 或 Ubuntu 20.04/22.04/24.04
  • 最少 1 GB RAM(重度计算建议 2 GB 以上)

为什么使用 R?

R 特别适用于:

  • 统计分析:测试、回归模型、方差分析
  • 数据可视化:使用 ggplot2 创建可发布的图表
  • 机器学习:分类、聚类、神经网络
  • 生物信息学:基因组和蛋白质组分析
  • 金融:风险分析、金融建模

步骤 1:安装依赖项

由于 R 是一个活跃开发的项目,最新稳定版本并不总是在 Debian/Ubuntu 仓库中可用。我们将添加由 CRAN 维护的外部仓库。

更新系统

sudo apt update && sudo apt upgrade -y

安装必要工具

sudo apt install -y dirmngr gnupg apt-transport-https ca-certificates software-properties-common

这些软件包提供:

  • dirmngr:证书管理和网络操作
  • gnupg:GPG 密钥管理
  • apt-transport-https:APT 的 HTTPS 支持
  • ca-certificates:证书颁发机构证书
  • software-properties-common:仓库管理

步骤 2:添加 CRAN 仓库

添加 GPG 密钥

sudo gpg --keyserver keyserver.ubuntu.com --recv-key '95C0FAF38DB3CCAD0C080A7BDC78B2DDEABC47B7'
sudo gpg --armor --export '95C0FAF38DB3CCAD0C080A7BDC78B2DDEABC47B7' | sudo tee /etc/apt/trusted.gpg.d/cran_debian_key.asc

根据您的发行版添加仓库

Debian 11 (Bullseye)

echo "deb http://cloud.r-project.org/bin/linux/debian bullseye-cran40/" | sudo tee /etc/apt/sources.list.d/r-project.list

Debian 12 (Bookworm)

echo "deb http://cloud.r-project.org/bin/linux/debian bookworm-cran40/" | sudo tee /etc/apt/sources.list.d/r-project.list

Ubuntu 22.04 (Jammy)

sudo add-apt-repository "deb https://cloud.r-project.org/bin/linux/ubuntu jammy-cran40/"

Ubuntu 24.04 (Noble)

sudo add-apt-repository "deb https://cloud.r-project.org/bin/linux/ubuntu noble-cran40/"

更新软件包列表

sudo apt update

步骤 3:安装 R

检查可用版本

apt-cache policy r-base

安装 R

sudo apt install -y r-base r-base-dev

r-base-dev 软件包包含从源代码编译 R 软件包所需的开发工具。

验证安装

R --version

您应该看到类似以下内容:

R version 4.4.x (2024-xx-xx) -- "Pile of Leaves"
Copyright (C) 2024 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu

步骤 4:使用 R

以交互模式启动 R

个人使用:

R

安装对所有用户可用的软件包:

sudo -i R

R 界面

进入 R 后,您将看到 > 提示符。以下是一些基本命令:

# 显示版本
version

# 获取帮助
help()

# 退出 R
q()

步骤 5:从 CRAN 安装软件包

R 在 CRAN(Comprehensive R Archive Network)上有数千个可用软件包。

安装软件包

在 R 解释器中:

install.packages('软件包名称')

示例:安装常用软件包

# 数据处理
install.packages('dplyr')
install.packages('tidyr')
install.packages('data.table')

# 可视化
install.packages('ggplot2')

# 机器学习
install.packages('caret')
install.packages('randomForest')

# 报告
install.packages('rmarkdown')
install.packages('knitr')

加载软件包

library(ggplot2)

使用 txtplot 的实际示例

让我们安装一个简单的软件包来创建 ASCII 图表:

# 安装软件包
install.packages('txtplot')

# 加载软件包
library('txtplot')

# 创建简单图表
txtplot(cars[,1], cars[,2], xlab = 'speed', ylab = 'distance')

结果:

    +----+--------+--------+-------+--------+--+
120 + * +
| |
d 100 + * +
i | * * |
s 80 + * * +
t | * * * |
a 60 + * +
n | * * * |
c 40 + * ** +
e | * * * * |
20 + * * * +
+----+--------+--------+-------+--------+--+
5 10 15 20 25
speed

步骤 6:安装 RStudio Server(可选)

RStudio Server 为 R 提供 Web 界面。

下载并安装 RStudio Server

对于 Debian/Ubuntu:

# 安装依赖项
sudo apt install -y gdebi-core

# 下载 RStudio Server(在 https://posit.co/download/rstudio-server/ 查看最新版本)
wget https://download2.rstudio.org/server/jammy/amd64/rstudio-server-2024.04.2-764-amd64.deb

# 安装
sudo gdebi rstudio-server-2024.04.2-764-amd64.deb

检查状态

sudo systemctl status rstudio-server

配置防火墙

sudo ufw allow 8787/tcp
sudo ufw reload

访问 RStudio Server

打开浏览器并访问:

http://服务器IP:8787

使用您的 Linux 凭据登录。

高级配置

设置默认 CRAN 镜像

创建或编辑 .Rprofile 文件:

nano ~/.Rprofile

添加:

options(repos = c(CRAN = "https://cloud.r-project.org"))

为 R 安装系统软件包

某些 R 软件包需要系统库:

# 对于具有常见依赖项的软件包
sudo apt install -y libcurl4-openssl-dev libssl-dev libxml2-dev libfontconfig1-dev libharfbuzz-dev libfribidi-dev libfreetype6-dev libpng-dev libtiff5-dev libjpeg-dev

增加可用内存

对于繁重计算,您可以在 R 中增加内存限制:

# 检查可用内存
memory.limit()

# 在 Linux 上,限制通常是可用 RAM

从命令行运行 R 脚本

运行 R 脚本

Rscript my_script.R

脚本示例

创建文件 analysis.R

#!/usr/bin/env Rscript

# 加载数据
data <- read.csv("data.csv")

# 描述性统计
summary(data)

# 保存结果
write.csv(summary(data), "results.csv")

print("分析完成!")

运行:

Rscript analysis.R

按领域分类的热门软件包

数据科学

软件包描述
tidyverse数据科学软件包集合
dplyr数据处理
ggplot2可视化
readr数据导入
tidyr数据清理

机器学习

软件包描述
caret统一的 ML 框架
randomForest随机森林
xgboost梯度提升
keras深度学习
mlr3现代 ML 框架

统计

软件包描述
stats基础统计(内置)
lme4混合模型
survival生存分析
forecast时间序列

故障排除

安装软件包时出错

如果出现编译错误:

# 安装开发工具
sudo apt install -y build-essential

# 安装常见依赖项
sudo apt install -y libcurl4-openssl-dev libssl-dev libxml2-dev

找不到软件包

CRAN 上检查软件包名称是否正确。

内存不足

如果 R 内存不足:

# 清理环境
rm(list = ls())

# 强制垃圾回收
gc()

检查已安装的软件包

# 列出所有软件包
installed.packages()

# 检查软件包是否已安装
"ggplot2" %in% rownames(installed.packages())

更新 R

将 R 更新到最新版本:

sudo apt update
sudo apt upgrade r-base r-base-dev
注意

在 R 主要更新后,您可能需要重新安装软件包。