web-dev-qa-db-fra.com

Comment installer un package R à partir des sources?

Un ami m'a envoyé ce long tutoriel sur Webscraping NYtimes with R . J'aimerais vraiment l'essayer. Cependant, la première étape consiste à installer un package appelé RJSONIO à partir du source.

Je connais assez bien R, mais je ne sais pas comment installer un paquet à partir de la source.

J'utilise Mac OSX.

360
Madjoro

Si vous avez le fichier localement, utilisez install.packages() et définissez le repos=NULL:

install.packages(path_to_file, repos = NULL, type="source")

path_to_file représenterait le chemin complet et le nom du fichier:

  • Sous Windows, cela ressemblera à quelque chose comme ceci: "C:\\RJSONIO_0.2-3.tar.gz".
  • Sous UNIX, cela ressemblera à ceci: "/home/blah/RJSONIO_0.2-3.tar.gz".
439
Shane

Téléchargez le paquet source, ouvrez Terminal.app, naviguez jusqu'au répertoire où vous avez actuellement le fichier, puis exécutez:

R CMD INSTALL RJSONIO_0.2-3.tar.gz

Notez que cela ne réussira que si: a) le paquet n'a pas besoin de compilation ou b) les outils système nécessaires à la compilation sont présents. Voir: https://cran.r-project.org/bin/macosx/tools/

86
rcs

Vous pouvez installer directement à partir du référentiel (notez le type="source"):

install.packages("RJSONIO", repos = "http://www.omegahat.org/R", type="source")
48
Eduardo Leoni

Un conseil particulièrement utile (mais trivial) pour installer une version plus ancienne des packages à partir des sources.

Premièrement, si vous appelez "install.packages", il installe toujours le dernier package à partir du référentiel. Si vous souhaitez installer l'ancienne version de packages, par exemple pour des raisons de compatibilité, vous pouvez appeler install.packages ("url_to_source", repo = NULL, type = "source"). Par exemple:

install.packages("http://cran.r-project.org/src/contrib/Archive/RNetLogo/RNetLogo_0.9-6.tar.gz", repo=NULL, type="source")

Sans télécharger manuellement les packages sur le disque local et basculer vers la ligne de commande ou installer à partir du disque local, j'ai trouvé cela très pratique et simplifier l'appel (en une étape).

De plus, vous pouvez utiliser cette astuce avec dev_mode de la bibliothèque devtools pour gérer différentes versions de paquets:

Référence: doc devtools

22
ReneWang

De cran , vous pouvez installer directement à partir d’une adresse de dépôt github. Donc si vous voulez le paquet à https://github.com/Twitter/AnomalyDetection:

library(devtools)
install_github("Twitter/AnomalyDetection")

fait le tour.

7
Dodgie

De plus, vous pouvez construire le paquet binaire en utilisant l'option --binary.

R CMD build --binary RJSONIO_0.2-3.tar.gz
7
haridsv