Как установить R на Debian/Ubuntu
Это руководство объясняет, как установить язык программирования R на ваш сервер Debian или Ubuntu. R — это язык с открытым исходным кодом, широко используемый для разработки статистического программного обеспечения, анализа данных и визуализации.
Заказать сервер
Для работы с R и анализа данных HostMyServers предлагает несколько вариантов:
- VPS Performance — Идеально для интенсивных вычислений
- VPS NVMe — Отличное соотношение цены и качества
- Выделенные серверы Eco — Для больших наборов данных
- Выделенные серверы Performance — Максимальная производительность для машинного обучения
Требования
- SSH-доступ root или пользователь с sudo
- Debian 11/12 или Ubuntu 20.04/22.04/24.04
- Минимум 1 ГБ RAM (рекомендуется 2 ГБ+ для тяжёлых вычислений)
Почему использовать 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: Поддержка HTTPS для APTca-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.
Скачать и установить 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
Популярные пакеты по областям
Data Science
| Пакет | Описание |
|---|---|
tidyverse | Коллекция пакетов для data science |
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 может потребоваться переустановка пакетов.