Вступление
Популярный язык программирования с открытым исходным кодом, R специализируется на статистических вычислениях и графике. Он широко используется для разработки статистического программного обеспечения и анализа данных. Сообщество R известно постоянным добавлением пользовательских пакетов для конкретных областей исследования, что делает его применимым ко многим областям.
В этом руководстве мы рассмотрим, как установить devtools и использовать его для установки пакета R непосредственно из GitHub.
Предпосылки
Чтобы следовать этому руководству, вам понадобится сервер Ubuntu 18.04 с:
-
по крайней мере 1 ГБ ОЗУ
-
R установлен, достигнуто следующим [шаг 1 данного руководства по установке R]
Как только эти предварительные условия созданы, вы готовы начать.
Шаг 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 +
из официальной Comprehensive R Archive Network (CRAN) ,
install.packages('devtools')
Установка может занять некоторое время. Когда он закончится, ближе к концу вывода установки мы должны увидеть:
Output...
** testing if installed package can be loaded
* DONE (devtools)
Далее, мы протестируем его и получим проект прямо из GitHub.
Шаг 3 - Установка пакета R из GitHub
На этом шаге мы собираемся установить последнюю сборочную версию Shiny, фреймворка веб-приложений для R, непосредственно из GitHub. Мы сделаем это с помощью функции + install_github +
, предоставляемой devtools. Пакет GitHub определяется его автором (+ rstudio +
) и его именем (+ блестящий +
), который можно найти по URL-адресу GitHub главной страницы проекта: + https: // github.com / +
.
Используйте следующую команду для установки:
devtools::install_github('rstudio/shiny')
Установка успешно завершена, когда мы видим следующие строки в конце вывода и возвращаемся в приглашение R:
Output. . .
** testing if installed package can be loaded
* DONE (shiny)
>
Мы можем увидеть конкретную версию Shiny, которую мы установили с помощью следующей команды:
packageVersion("shiny")
Output[1] ‘1.1.0.9000’
На следующем шаге мы кратко рассмотрим Shiny. Сначала нам нужно выполнить несколько задач системного уровня, поэтому мы выйдем из монитора с помощью следующей команды или с помощью CTRL-D:
q()
Любой из них предложит вам сохранить образ рабочего пространства, рабочую среду R, которая включает в себя определенные пользователем объекты. Это не нужно для наших целей, поэтому вы можете безопасно вводить + n +
.
Поскольку мы будем использовать веб-браузер, чтобы посмотреть на пример того, что может сделать Shiny, мы позаботимся о том, чтобы веб-трафик был разрешен.
Проверьте брандмауэр
Shiny - это фреймворк для веб-приложений, поэтому для просмотра его примеров в браузере нам необходимо убедиться, что веб-трафик разрешен на нашем брандмауэре. Встроенный веб-сервер случайным образом выбирает порт при каждом запуске, если только мы не инициируем его с определенным значением. Чтобы упростить управление брандмауэром, мы укажем порт 4040 при запуске нашего примера.
Давайте проверим состояние брандмауэра, если он у нас включен:
sudo ufw status
Если вы следовали нашим обязательным учебным пособиям, разрешен только SSH, как указано в следующих выходных данных:
OutputStatus: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
У вас могут быть другие правила или вообще нет правил брандмауэра. Поскольку в этом случае разрешен только трафик SSH, мы добавим порт 4040 и проверим состояние, когда закончим.
sudo ufw allow 4040/tcp
sudo ufw status
OutputStatus: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
4040/tcp ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
4040/tcp (v6) ALLOW Anywhere (v6)
С настроенным брандмауэром мы готовы взглянуть на Shiny.
Run Shiny:
Мы подключимся к R, на этот раз как обычный пользователь. Обязательно наберите + R +
в качестве регистра.
R
Далее мы загрузим пакет Shiny:
library("shiny")
Блестящий включает в себя одиннадцать встроенных примеров, которые демонстрируют, как это работает. Мы загрузим библиотеку, а затем запустим первый пример. Поскольку мы работаем на удаленном сервере, мы будем указывать адрес хоста для просмотра с нашего локального компьютера. Мы также установим + launch.browser +
в + FALSE +
, чтобы он не пытался запустить браузер на удаленном сервере.
runExample("01_hello", host = "", port = 4040, launch.browser= FALSE)
OutputListening on http://:4040
Давайте посетим этот URL в веб-браузере:
изображение: http: //assets.digitalocean.com/articles/R-1604/r-shiny-1804.png [Снимок экрана примера Shiny’s 01-Hello]
Мы установили Shiny для иллюстрации использования devtools для установки непосредственно из репозитория GitHub. Затем мы запустили пример приложения Shiny без повышенных прав, чтобы убедиться, что все пользователи имеют доступ к пакету.
Переустановка стабильной версии Shiny
В производственной ситуации мы будем устанавливать из CRAN, если у нас не было веской причины для установки из репозитория.
Давайте вернемся к стабильному пакету. Сначала мы прервем сервер с помощью + CTRL +
+ + C +
, затем выйдем из оболочки R с помощью + CTRL +
+ + D +
и повторно введем его как root:
sudo -i R
Мы можем установить стабильную версию с помощью следующей команды, которая перезапишет установку из GitHub, которую мы завершили на предыдущем шаге.
install.packages("shiny")
Давайте проверим изменение в версии:
packageVersion("shiny")
Output[1] ‘1.1.0’
Вывод показывает, что вместо + 1.1.0.9000 +
, версии, которую мы установили с GitHub, мы сейчас работаем со стабильной версией.
Заключение
В этом руководстве мы установили последний пакет Shiny непосредственно из GitHub и узнали, как переустановить его стабильный выпуск из CRAN.
Если вы заинтересованы в получении дополнительной информации о самой Shiny, вы можете взглянуть на Shiny tutorial RStudio. Вас также может заинтересовать ininstall сервер с открытым исходным кодом RStudio Server, интерфейс до версии R, работающей на удаленном сервере Linux, которая приводит IDE к развертыванию на основе сервера.