web-dev-qa-db-fra.com

Chargement d'un package R à partir d'un répertoire personnalisé

Si je télécharge un fichier "nom-package" .tar.gz depuis le site Web de CRAN, le gunzip et le décompresse dans un répertoire personnalisé, comment puis-je charger ce package à partir de R? Je ne peux pas extraire le fichier dans le répertoire d'installation de R.

28
rlh2

Essayez d'utiliser le package de Hadley Wickham devtools , qui permet de charger des packages à partir d'un répertoire donné:

library(devtools)

# load package w/o installing
load_all('/some/package/diR')

# or invoke 'R CMD INSTALL'
install('/some/package/diR')
46
f3lix

Vous devez installer le package dans un répertoire dans lequel vous êtes autorisé à lire et à écrire. Tout d'abord, téléchargez le package dans un répertoire facilement accessible. Si vous êtes sous Linux/Mac, essayez de créer un répertoire appelé 'rlib' dans votre répertoire personnel.

cd ~; mkdir rlib
R CMD INSTALL MSBVAR.tar.gz --library=rlib

Si vous préférez installer le package à partir de R, procédez comme suit:

## From CRAN
install.packages("MSBVAR", lib="~/rlib")
6
Daniel Gerlanc

Veuillez ajouter des informations supplémentaires sur le système d'exploitation. Si vous êtes sous Windows, vous avez besoin de Rtools ( http://www.murdoch-sutherland.com/Rtools/ ) pour construire à partir des sources. Consultez ce site Web pour plus d'informations sur la façon d'installer tout ce dont vous avez besoin.

Même lorsque vous êtes sous Linux, extraire simplement le fichier de package ne fonctionne pas. Il peut y avoir du code C sous-jacent (ce qui est le cas pour le package MSBVAR), et même le code R doit être traité afin d'être intégré dans un package qui peut être chargé directement avec la fonction library() fonction.

De plus, vous devez tenir compte du fait que le package que vous souhaitez installer peut avoir des dépendances. Pour le package MSBVAR, ce sont les packages coda et bit. Lors de la génération à partir de la source, vous devez vous assurer que toutes les dépendances sont également installées, sinon vous pouvez obtenir des erreurs.

en dehors de R CMD INSTALL, vous pouvez essayer depuis R:

# from CRAN
install.packages("MSBVAR", type="source")
# from a local file 
install.packages("/my/dir/MSBVAR.tar.gz",repos=NULL, type="source")

ou pourquoi ne pas faire

# from CRAN
install.packages("MSBVAR")

Cela fonctionne parfaitement bien.

6
Joris Meys

Vous ne pouvez pas appeler R CMD INSTALL downloadedpackage.gz?

Si je comprends bien, cela devrait installer le package dans votre espace utilisateur s'il ne peut pas obtenir les autorisations d'écriture dans le dossier d'installation R

2
tim_yates

Depuis R 3.5.3, c'est possible sans devtools avec la commande ci-dessous

library(mypkg, lib.loc = "f:/R-packages")
0
krishnaaditya

vous n'avez pas besoin de décompresser ou de décompresser
donnez simplement cette commande dans l'invite de commande et elle sera décompressée à l'endroit approprié

R CMD INSTALL [options] [l-lib] pkgs.tar.gz

comme expliqué ici

alors vous pouvez l'utiliser dans R par library(the_pkg)

0
svural