657 votes

Comment dois-je faire face à "paquet 'xxx' n'est pas disponible" avertissement?

659voto

Richie Cotton Points 35365

1. Vous ne pouvez pas orthographier

La première chose à tester est avez-vous orthographié le nom du package correctement? Les noms de paquets sont sensibles à la casse.


2. Vous ne les voyez pas dans le bon référentiel

Ensuite, vous devriez vérifier pour voir si le paquet est disponible. Type

setRepositories()

Voir aussi ?setRepositories.

Pour voir quels référentiels R va le chercher dans le colis, et le cas échéant, sélectionnez quelques autres. À tout le moins, vous voudrez généralement CRAN pour être sélectionné, et CRAN (extras) si vous utilisez Windows, et l' Bioc* dépôts si vous n'avez aucune [gen/s/metabol/transcription]omique analyses biologiques.

Pour modifier définitivement ce problème, ajoutez une ligne comme celle - setRepositories(ind = c(1:6, 8)) votre Rprofile.site le fichier.


3. Le paquet n'est pas dans les dépôts que vous avez sélectionné

De retour de tous les paquets disponibles à l'aide de

ap <- available.packages()

Voir aussi les Noms de la R de paquets disponibles, ?disponible.les packages.

Puisque c'est une matrice de grande taille, vous pouvez utiliser le visualiseur de données pour l'examiner. Alternativement, vous pouvez rapidement vérifier pour voir si le paquet est disponible en testant contre la rownames.

View(ap)
"foobarbaz" %in% rownames(ap)

Sinon, la liste des paquets disponibles peuvent être vus dans un navigateur pour CRAN, CRAN (extras), Bioconductor, R-forge et RForge.


Il y a plusieurs raisons pour qu'un paquet peut ne pas être disponible.


4. Vous ne voulez pas un paquet

Peut-être que vous ne voulez pas vraiment un paquet. Il est fréquent d'être confus au sujet de la différence entre un paquet et une bibliothèque, ou d'un package et d'un jeu de données. Pour voir l'offre de jeux de données, de type

data()

5. R et Bioconductor est pas à jour

Il peut avoir une dépendance sur une version plus récente de R (ou un des paquets importations/dépend de l'est). Regarder

ap["foobarbaz", "Depends"]

et pensez à mettre à jour vos R l'installation de la version actuelle. Sur Windows c'est plus facile à faire via l' installr package.

library(installr)
updateR()

(Bien sûr, vous devrez peut - install.packages("installr") en premier).

De manière équivalente pour Bioconductor paquets, vous devez mettre à jour votre Bioconductor de l'installation.

source("http://bioconductor.org/biocLite.R")
biocLite("BiocUpgrade")

6. Le paquet est en dehors de la date

Il peut avoir été archivé (si il n'est plus maintenu et ne passe plus R CMD check des tests).


7. Il n'y a pas de Windows/OS X/Linux binaire

Il ne peut pas avoir un binaire Windows en raison de besoin de logiciel supplémentaire que le CRAN n'a pas. En outre, certains paquets sont disponibles uniquement via les sources pour certaines ou pour toutes les plates-formes. Dans ce cas, il peut y avoir une version en CRAN (extras) référentiel (voir setRepositories ci-dessus).

Si le paquet, il faut compiler le code (ex: C, C++, FORTRAN), puis sur Windows installer Rtools ou sur OS X, installez le développeur d'outils d'accompagnement XCode, et installer la version de la source du paquet par l'intermédiaire de:

install.packages("foobarbaz", type = "source")

Sur CRAN, vous pouvez dire si vous aurez besoin d'outils spéciaux pour construire le paquet à partir des sources en regardant l' NeedsCompilation drapeau dans la description.


8. Le paquet est sur github/Bitbucket/Gitorious

Il peut y avoir un dépôt sur github/Bitbucket/Gitorious. Ces paquets ont besoin de l' devtools paquet à installer.

library(devtools)
install_github("foobarbaz", "packageauthor")
install_bitbucket("foobarbaz", "packageauthor")
install_gitorious("foobarbaz", "packageauthor")

(Avec installr, vous devrez peut - install.packages("devtools") en premier).


9. Il n'y a pas de version du paquet

Bien que la version binaire de votre colis est disponible, la version de la source ne l'est pas. Vous pouvez désactiver cette case à par la mise en

options(install.packages.check.source = "no")

comme décrit dans cette SORTE de réponse par imanuelc et la section Détails de l' ?install.packages.


10. Le paquet est dans un référentiel standard

Votre colis est dans un non-référentiel standard (par exemple, Rbbg). En supposant qu'il est raisonnablement compatible avec CRAN normes, vous pouvez toujours le télécharger à l'aide de install.packages; il suffit de spécifier l'adresse URL du référentiel.

install.packages("Rbbg", repos = "http://r.findata.org")

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X