1. Non puoi scrivere
La prima cosa da testare è aver digitato correttamente il nome del pacchetto? I nomi dei pacchetti fanno distinzione tra maiuscole e minuscole in R.
2. Non hai cercato nel repository giusto
Successivamente, è necessario verificare se il pacchetto è disponibile. genere
setRepositories()
Vedi anche ? SetRepositories .
Per vedere quali repository R cercherà il tuo pacchetto e, facoltativamente, selezionarne altri. Per lo meno, di solito vorrai CRANessere selezionato, e CRAN (extras)se usi Windows e i Bioc*repository se lo fai[Gen / prote / metabol / trascrizione] omiche analisi biologiche.
Per modificarlo in modo permanente, aggiungi una riga simile setRepositories(ind = c(1:6, 8))al tuo Rprofile.sitefile.
3. Il pacchetto non si trova nei repository selezionati
Restituisci tutti i pacchetti disponibili usando
ap <- available.packages()
Vedi anche i nomi dei pacchetti disponibili di R , ? Available.packages .
Poiché questa è una matrice di grandi dimensioni, potresti voler utilizzare il visualizzatore di dati per esaminarlo. In alternativa, puoi verificare rapidamente se il pacchetto è disponibile testando i nomi delle righe.
View(ap)
"foobarbaz" %in% rownames(ap)
In alternativa, l'elenco dei pacchetti disponibili può essere visualizzato in un browser per CRAN , CRAN (extra) , Bioconduttore , R-forge , RForge e github .
Un altro possibile messaggio di avviso che potresti ricevere quando interagisci con i mirror CRAN è:
Warning: unable to access index for repository
Ciò può indicare che il repository CRAN selezionato non è attualmente disponibile. È possibile selezionare un altro mirror con chooseCRANmirror()e riprovare l'installazione.
Esistono diversi motivi per cui un pacchetto potrebbe non essere disponibile.
4. Non vuoi un pacchetto
Forse non vuoi davvero un pacchetto. È comune essere confusi sulla differenza tra un pacchetto e una libreria o un pacchetto e un set di dati.
Un pacchetto è una raccolta standardizzata di materiale che estende R, ad esempio fornendo codice, dati o documentazione. Una libreria è un luogo (directory) in cui R sa trovare i pacchetti che può usare
Per visualizzare i set di dati disponibili, digitare
data()
5. R o Bioconductor non sono aggiornati
Potrebbe dipendere da una versione più recente di R (o da uno dei pacchetti che importa / dipende da). Guarda a
ap["foobarbaz", "Depends"]
e considera l'aggiornamento della tua installazione R alla versione corrente. Su Windows, ciò è più semplice tramite il installrpacchetto.
library(installr)
updateR()
(Certo, potrebbe essere necessario install.packages("installr")prima.)
Equivalentemente per i pacchetti Bioconductor, potrebbe essere necessario aggiornare l'installazione di Bioconductor.
source("http://bioconductor.org/biocLite.R")
biocLite("BiocUpgrade")
6. Il pacchetto non è aggiornato
Potrebbe essere stato archiviato (se non viene più mantenuto e non supera più i R CMD checktest).
In questo caso, è possibile caricare una versione precedente del pacchetto utilizzando install_version()
library(remotes)
install_version("foobarbaz", "0.1.2")
Un'alternativa è installare dal mirror CRAN di github.
library(remotes)
install_github("cran/foobarbaz")
7. Non esiste un file binario Windows / OS X / Linux
Potrebbe non avere un file binario di Windows a causa della necessità di software aggiuntivo che CRAN non ha. Inoltre, alcuni pacchetti sono disponibili solo tramite i sorgenti per alcune o tutte le piattaforme. In questo caso, potrebbe esserci una versione nel CRAN (extras)repository (vedi setRepositoriessopra).
Se il pacchetto richiede il codice di compilazione (ad esempio C, C ++, FORTRAN), quindi su Windows installa Rtools o su OS X installa gli strumenti di sviluppo che accompagnano XCode e installa la versione di origine del pacchetto tramite:
install.packages("foobarbaz", type = "source")
# Or equivalently, for Bioconductor packages:
source("http://bioconductor.org/biocLite.R")
biocLite("foobarbaz", type = "source")
Su CRAN, puoi sapere se avrai bisogno di strumenti speciali per compilare il pacchetto dal sorgente guardando il NeedsCompilation bandiera nella descrizione.
8. Il pacchetto è su github / Bitbucket / Gitorious
Potrebbe avere un repository su Github / Bitbucket / Gitorious. Questi pacchetti richiedono l' remotesinstallazione del pacchetto.
library(remotes)
install_github("packageauthor/foobarbaz")
install_bitbucket("packageauthor/foobarbaz")
install_gitorious("packageauthor/foobarbaz")
(Come per installr, potrebbe essere necessario install.packages("remotes")prima.)
9. Non esiste una versione di origine del pacchetto
Sebbene la versione binaria del pacchetto sia disponibile, la versione di origine non lo è. È possibile disattivare questo controllo impostando
options(install.packages.check.source = "no")
come descritto in questa risposta SO da imanuelc e la sezione Dettagli di ?install.packages.
10. Il pacchetto si trova in un repository non standard
Il pacchetto si trova in un repository non standard (ad es Rbbg.). Supponendo che sia ragionevolmente conforme agli standard CRAN, è comunque possibile scaricarlo utilizzando install.packages; devi solo specificare l'URL del repository.
install.packages("Rbbg", repos = "http://r.findata.org")
RHIPEd'altra parte non è in un repository simile a CRAN e ha le sue istruzioni di installazione .