1. Vous ne pouvez pas épeler
La première chose à tester est l' orthographe correcte du nom du package? Les noms de packages sont sensibles à la casse dans R.
2. Vous n'avez pas regardé dans le bon référentiel
Ensuite, vous devriez vérifier si le package est disponible. Type
setRepositories()
Voir aussi ? SetRepositories .
Pour voir quels référentiels R recherchera votre package et en sélectionner éventuellement d'autres. À tout le moins, vous voudrez généralement CRAN
être sélectionné, et CRAN (extras)
si vous utilisez Windows, et les Bioc*
référentiels si vous en faites[gen / prote / metabol / transcript] omics analyses biologiques.
Pour changer cela définitivement, ajoutez une ligne similaire setRepositories(ind = c(1:6, 8))
à votre Rprofile.site
fichier.
3. Le package ne se trouve pas dans les référentiels que vous avez sélectionnés
Renvoyez tous les packages disponibles en utilisant
ap <- available.packages()
Voir aussi les noms des paquets disponibles de R , ? Available.packages .
Comme il s'agit d'une grande matrice, vous souhaiterez peut-être utiliser la visionneuse de données pour l'examiner. Alternativement, vous pouvez rapidement vérifier si le package est disponible en testant les noms de ligne.
View(ap)
"foobarbaz" %in% rownames(ap)
Alternativement, la liste des packages disponibles peut être consultée dans un navigateur pour CRAN , CRAN (extras) , Bioconductor , R-forge , RForge et github .
Un autre message d'avertissement possible que vous pouvez recevoir lors de l'interaction avec les miroirs CRAN est:
Warning: unable to access index for repository
Ce qui peut indiquer que le référentiel CRAN sélectionné est actuellement indisponible. Vous pouvez sélectionner un autre miroir avec chooseCRANmirror()
et réessayer l'installation.
Il existe plusieurs raisons pour lesquelles un package peut ne pas être disponible.
4. Vous ne voulez pas de colis
Peut-être que vous ne voulez pas vraiment de package. Il est courant de confondre la différence entre un package et une bibliothèque , ou un package et un ensemble de données.
Un package est une collection standardisée de documents étendant R, par exemple en fournissant du code, des données ou de la documentation. Une bibliothèque est un endroit (répertoire) où R sait trouver les packages qu'il peut utiliser
Pour voir les jeux de données disponibles, tapez
data()
5. R ou le bioconducteur est obsolète
Il peut dépendre d'une version plus récente de R (ou de l'un des packages dont il importe / dépend). Regarder
ap["foobarbaz", "Depends"]
et envisagez de mettre à jour votre installation R vers la version actuelle. Sous Windows, cela se fait plus facilement via le installr
package.
library(installr)
updateR()
(Bien sûr, vous devrez peut-être d' install.packages("installr")
abord.)
De manière équivalente pour les packages Bioconductor, vous devrez peut-être mettre à jour votre installation Bioconductor.
source("http://bioconductor.org/biocLite.R")
biocLite("BiocUpgrade")
6. Le colis est obsolète
Il peut avoir été archivé (s'il n'est plus maintenu et ne passe plus les R CMD check
tests).
Dans ce cas, vous pouvez charger une ancienne version du package en utilisant install_version()
library(remotes)
install_version("foobarbaz", "0.1.2")
Une alternative consiste à installer à partir du miroir github CRAN.
library(remotes)
install_github("cran/foobarbaz")
7. Il n'y a pas de binaire Windows / OS X / Linux
Il peut ne pas avoir de binaire Windows car il nécessite des logiciels supplémentaires que CRAN n'a pas. De plus, certains packages sont disponibles uniquement via les sources pour certaines ou toutes les plateformes. Dans ce cas, il peut y avoir une version dans le CRAN (extras)
référentiel (voir setRepositories
ci - dessus).
Si le package nécessite la compilation de code (par exemple C, C ++, FORTRAN), sur Windows installez Rtools ou sur OS X, installez les outils de développement accompagnant XCode et installez la version source du package via:
install.packages("foobarbaz", type = "source")
# Or equivalently, for Bioconductor packages:
source("http://bioconductor.org/biocLite.R")
biocLite("foobarbaz", type = "source")
Sur CRAN, vous pouvez savoir si vous aurez besoin d'outils spéciaux pour construire le package à partir des sources en regardant l' NeedsCompilation
indicateur dans la description.
8. Le paquet est sur github / Bitbucket / Gitorious
Il peut avoir un référentiel sur Github / Bitbucket / Gitorious. Ces packages nécessitent l' remotes
installation du package.
library(remotes)
install_github("packageauthor/foobarbaz")
install_bitbucket("packageauthor/foobarbaz")
install_gitorious("packageauthor/foobarbaz")
(Comme avec installr
, vous devrez peut-être d' install.packages("remotes")
abord.)
9. Il n'y a pas de version source du paquet
Bien que la version binaire de votre package soit disponible, la version source ne l'est pas. Vous pouvez désactiver cette vérification en définissant
options(install.packages.check.source = "no")
comme décrit dans cette réponse SO par imanuelc et la section Détails de ?install.packages
.
10. Le package est dans un référentiel non standard
Votre package se trouve dans un référentiel non standard (par exemple Rbbg
). En supposant qu'il soit raisonnablement conforme aux normes CRAN, vous pouvez toujours le télécharger en utilisant install.packages
; il vous suffit de spécifier l'URL du référentiel.
install.packages("Rbbg", repos = "http://r.findata.org")
RHIPE
d'autre part n'est pas dans un référentiel de type CRAN et a ses propres instructions d'installation .