R – это популярный открытый язык программирования, который специализируется на статистических расчетах и графиках. Он широко используется специалистами для разработки программного обеспечения для статистики и проведения анализа данных. Одним из преимуществ R является его расширяемость. Сообщество R постоянно добавляет новые пользовательские пакеты, которые можно применить для сбора статистики в различных областях науки.
Данное руководство поможет установить devtools и научит устанавливать пакеты с GitHub.
Требования
- Сервер Ubuntu 16.04.
- Пользователь с доступом к команде sudo (подробнее об этом – в руководстве по начальной настройке сервера).
- Предварительно установленный язык R (инструкции по установке – здесь).
- Минимум 1 Гб оперативки.
1: Установка зависимостей devtools
Чтобы установить все зависимости devtools, введите:
sudo apt-get 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')
В ответ на запрос выберите 1 в 0-Cloud, чтобы подключиться к сети доставки контента (CDN), предоставленной RStudio, и получить географически близкое зеркало. После этого начнется установка. Она может занять некоторое время. Когда она закончится, в конце вывода вы увидите строки:
...
** 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] ‘0.14.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
Поскольку оболочка была закрыта, R снова предложит выбрать зеркало (для этого нажмите 1).
Чтобы установить стабильную версию, используйте следующую команду, которая перезапишет установку GitHub:
install.packages("shiny")
Убедитесь, что пакет был переустановлен:
packageVersion("shiny")
[1] ‘0.14’
Как видите, теперь вместо версии 0.14.9000, загруженной с GitHub, используется стабильный релиз.
Примечание: Больше информации о версии пакета можно получить, открыв с помощью командной строки системы файл DESCRIPTION.
cat /usr/local/lib/R/site-library/shiny/DESCRIPTION
Заключение
Теперь вы умеете устанавливать пакеты с GitHub и переустанавливать их с CRAN.
Читайте также: