Site icon 8HOST.COM

Установка пакетов R с помощью devtools в Ubuntu 18.04

R – это популярный открытый язык программирования, который специализируется на статистических расчетах и графиках. Он широко используется специалистами для разработки программного обеспечения для статистики и проведения анализа данных. Одним из преимуществ R является его расширяемость. Сообщество R постоянно добавляет новые пользовательские пакеты, которые можно применить для сбора статистики в различных областях науки.

Данный мануал поможет установить devtools и научит устанавливать пакеты с GitHub.

Требования

1: Установка зависимостей devtools

Чтобы установить все зависимости devtools, введите:

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

2: Установка devtools

Инструмент devtools позволяет устанавливать и собирать пакеты с GitHub, BitBucket, устанавливать конкретные версии с CRAN. Чтобы получить общесистемный экземпляр devtools, откройте оболочку R как root:

sudo -i R

Используйте функцию install.packages(), чтобы установить devtools с официального сайта CRAN (Comprehensive R Archive Network).

install.packages('devtools')

Начнется установка. Она может занять некоторое время. Когда она закончится, в конце вывода вы увидите строки:

...
** testing if installed package can be loaded
* DONE (devtools)

3: Установка пакета R с GitHub

Попробуйте установить с GitHub последнюю сборку Shiny, фреймворка приложений R. Для этого devtools предоставляет функцию install_github. Необходимый пакет GitHub определяется по автору (в данном случае rstudio) и имени (shiny); все эти данные можно найти в ссылке GitHub:

https://github.com/rstudio/shiny.

Чтобы установить пакет, введите:

devtools::install_github('rstudio/shiny')

Когда установка будет успешно завершена, на экране вы увидите следующий вывод и командную строку R:

. . .
** testing if installed package can be loaded
* DONE (shiny)
>

Запросите версию Shiny:

packageVersion("shiny")
[1] ‘1.1.0.9000’

Позже мы рассмотрим Shiny подробнее. А пока нужно закрыть оболочку R и выполнить пару общесистемных задач. Для этого используйте клавиши CTRL-D или команду:

q()

При этом вам будет предложено сохранить образ рабочего пространства (это рабочая среда R, которая включает в себя определенные пользователем объекты). В этом нет необходимости, так что вы можете ввести n.

Настройка брандмауэра

Поскольку для взаимодействия с Shiny нужен браузер, нужно убедиться в том, что брандмауэр пропускает веб-трафик.

Встроенный веб-сервер при запуске выбирает порт случайным образом, если вы не укажете определенный номер порта. Для примера можно указать порт 4040.

Проверьте состояние брандмауэра:

sudo ufw status

На данный момент брандмауэр поддерживает только трафик SSH.

Status: active
To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)

Примечание: Список правил брандмауэра может отличаться.

Добавьте в список порт 4040 и снова проверьте состояние:

sudo ufw allow 4040/tcp
sudo ufw status
Status: active
To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
4040/tcp                   ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)
4040/tcp (v6)              ALLOW       Anywhere (v6)

Теперь брандмауэр будет пропускать веб-трафик.

Запуск Shiny

Подключитесь к R как обычный пользователь.

R

Загрузите shiny:

library("shiny")

Shiny включает в себя одиннадцать встроенных примеров, которые демонстрируют работу фреймворка. Загрузив библиотеку shiny, запустите первый пример. Работая на удалённом сервере, вы должны указать адрес хоста. Задайте параметру launch.browser значение FALSE, чтобы браузер не запускался на удалённом сервере.

runExample("01_hello", host = "203.0.113.0", port = 4040, launch.browser= FALSE)
Listening on http://203.0.113.0:4040

Откройте URL-адрес в браузере. На экране появится приветственная страница:

Hello Shiny!

Переустановка стабильной версии Shiny

В среде производства пакеты нужно устанавливать с сайта CRAN (если только у вас нет веских причин для установки пакетов из репозитория).

Вернитесь к стабильному пакету. Остановите сервер (CTRL-C), закройте оболочку R (CTRL-D) и откройте её снова, теперь как root.

sudo -i R

Чтобы установить стабильную версию, используйте следующую команду, которая перезапишет установку GitHub:

install.packages("shiny")

Убедитесь, что пакет был переустановлен:

packageVersion("shiny")
[1] ‘1.1.0’

Как видите, теперь вместо версии 1.1.0.9000, загруженной с GitHub, используется стабильный релиз.

Примечание: Больше информации о версии пакета можно получить, открыв с помощью командной строки системы файл DESCRIPTION.

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

Заключение

Теперь вы умеете устанавливать пакеты с GitHub и переустанавливать их с CRAN.

Читайте также: