Comment installer les paquets R en utilisant devtools sur Ubuntu 18.04

introduction

Langage de programmation open source populaire, R est spécialisé dans l’informatique statistique et les graphiques. Il est largement utilisé pour développer des logiciels statistiques et effectuer des analyses de données. La communauté R est connue pour l’ajout continu de packages générés par l’utilisateur pour des domaines d’étude spécifiques, ce qui le rend applicable à de nombreux domaines.

Dans ce didacticiel, nous allons expliquer comment installer devtools et l’utiliser pour installer un paquet R directement à partir de GitHub.

Conditions préalables

Pour suivre ce tutoriel, vous aurez besoin d’un serveur Ubuntu 18.04 avec:

Une fois que ces conditions préalables sont en place, vous êtes prêt à commencer.

Étape 1 - Installation des dépendances système pour devtools

Nous allons installer devtools à partir du shell interactif, mais avant cela, nous devrons installer les dépendances système suivantes:

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

Avec ces dépendances en place, nous sommes prêts à continuer.

Étape 2 - Installation du package devtools

Grâce à devtools, nous pourrons installer et construire des packages directement à partir de GitHub, BitBucket, des fichiers locaux et installer des versions spécifiques à partir de CRAN. Pour que devtools soit disponible sur l’ensemble du système, nous allons entrer le shell de R en tant que root:

sudo -i R

Depuis le moniteur, nous utiliserons la fonction + install.packages () + pour installer + devtools + à partir du site Comprehensive R Archive Network (CRAN) .

install.packages('devtools')

L’installation peut prendre un certain temps. Quand ce sera fini, vers la fin de la sortie de l’installation, nous devrions voir:

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

Ensuite, nous le mettrons à l’essai puisque nous allons chercher et construire un projet directement à partir de GitHub.

Étape 3 - Installer un paquet R à partir de GitHub

Dans cette étape, nous allons installer la dernière version de développement de Shiny, un framework d’applications Web pour R, directement à partir de GitHub. Nous ferons cela en utilisant la fonction + install_github + fournie par devtools. Un paquet GitHub est défini par son auteur (+ rstudio +) et son nom (+ brillant +) que vous pouvez trouver à partir de l’URL GitHub de la page principale du projet: + https: // github.com / +.

Utilisez la commande suivante pour installer:

devtools::install_github('rstudio/shiny')

L’installation est terminée lorsque les lignes suivantes apparaissent vers la fin de la sortie et sont renvoyées à l’invite R:

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

Nous pouvons voir la version spécifique de Shiny que nous avons installée avec la commande suivante:

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

Dans la prochaine étape, nous examinerons rapidement Shiny. Nous allons d’abord effectuer quelques tâches au niveau du système, nous allons donc quitter le moniteur à l’aide de la commande suivante ou en utilisant CTRL-D.

q()

L’un ou l’autre de ces éléments vous invitera à enregistrer l’image de votre espace de travail, l’environnement de travail de R comprenant des objets définis par l’utilisateur. Ce n’est pas nécessaire pour nos besoins, vous pouvez donc entrer en toute sécurité + n +.

Comme nous allons utiliser un navigateur Web pour voir un exemple de ce que Shiny peut faire, nous allons nous assurer que le trafic Web est autorisé.

Vérifiez le pare-feu

Shiny est un framework d’applications Web. Par conséquent, pour pouvoir visualiser ses exemples dans un navigateur, nous devons nous assurer que le trafic Web est autorisé sur notre pare-feu. Le serveur Web intégré choisit un port de manière aléatoire à chaque démarrage, sauf si nous l’initions avec une valeur spécifique. Pour faciliter la gestion du pare-feu, nous spécifierons le port 4040 lors de l’exécution de notre exemple.

Voyons l’état du pare-feu, s’il est activé:

sudo ufw status

Si vous avez suivi nos didacticiels préalables, seul SSH est autorisé, comme indiqué dans le résultat suivant:

OutputStatus: active

To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)

Vous pouvez avoir d’autres règles en place ou aucune règle de pare-feu du tout. Etant donné que seul le trafic SSH est autorisé dans ce cas, nous ajouterons le port 4040 et vérifierons l’état lorsque nous aurons terminé.

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)

Avec le pare-feu configuré, nous sommes prêts à examiner Shiny.

Run Shiny:

Nous allons nous connecter à R, cette fois en tant qu’utilisateur régulier. Assurez-vous de taper + R + comme cas de titre.

R

Ensuite, nous allons charger le paquet Shiny:

library("shiny")

Shiny comprend onze exemples intégrés illustrant son fonctionnement. Nous allons charger la bibliothèque, puis exécuter le premier exemple. Comme nous travaillons sur un serveur distant, nous allons spécifier l’adresse de l’hôte afin de pouvoir naviguer à partir de notre ordinateur local. Nous allons également définir + launch.browser sur` + FALSE` afin qu’il ne tente pas de lancer un navigateur sur le serveur distant.

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

Voyons cette URL dans un navigateur Web:

image: http: //assets.digitalocean.com/articles/R-1604/r-shiny-1804.png [Capture d’écran de l’exemple 01-Bonjour de Shiny]

Nous avons installé Shiny pour illustrer l’utilisation de devtools pour installer directement à partir d’un référentiel GitHub. Nous avons ensuite exécuté l’exemple d’application Shiny sans privilèges élevés pour vérifier que tous les utilisateurs avaient accès au package.

Réinstallation de la version stable de Shiny

Pour une situation de production, nous installerions à partir de CRAN sauf si nous avions une raison impérieuse d’installer à partir du référentiel.

Prenons un moment pour revenir au paquet stable. Premièrement, nous allons interrompre le serveur avec + CTRL + + + + C + , puis quitter le shell R avec + CTRL + `+ + + + + et le ré-entrer en tant que root:

sudo -i R

Nous pouvons installer la version stable avec la commande suivante, qui écrasera l’installation à partir de GitHub que nous avons effectuée à l’étape précédente.

install.packages("shiny")

Vérifions le changement de version:

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

La sortie indique qu’au lieu de "+ 1.1.0.9000 +", la version que nous avons installée à partir de GitHub, nous exécutons maintenant la version stable.

Conclusion

Dans ce tutoriel, nous avons installé le dernier paquet Shiny directement à partir de GitHub et appris à réinstaller sa version stable à partir de CRAN.

Si vous souhaitez en savoir plus sur Shiny, consultez le Shiny tutorial de RStudio. Vous pouvez également être intéressé par installer le serveur open source RStudio, une interface vers une version de R s’exécutant sur un serveur Linux distant, ce qui amène un environnement de développement intégré à un déploiement basé sur un serveur.