Vorrei installare un pacchetto direttamente da un URL per l'origine del pacchetto. Voglio farlo per rendere più facile per le persone testare una versione preliminare del pacchetto che non dovrebbe essere ampiamente (o permanentemente) disponibile. This è una domanda simile ma è diversa perché descrive solo come installare da file locali non URL generici.Installare un pacchetto R direttamente da un URL per l'origine del pacchetto
Per il piacere di questa domanda, utilizzerò un collegamento all'origine del pacchetto boot
. Leggendo ?install.packages
particolare la descrizione dell'argomento pkgs
suggerisce:
install.packages(
"http://cran.r-project.org/src/contrib/Archive/boot/boot_1.3-7.tar.gz",
repos = NULL, type = "source"
)
Tuttavia questo non funziona con:
Warning in install.packages :
installation of package
‘http://cran.r-project.org/src/contrib/Archive/boot/boot_1.3-7.tar.gz’
had non-zero exit status
suggerendo che l'URL viene interpretato come il nome del pacchetto, non la sua posizione. Possiamo ovviare a questo con la seguente procedura in due fasi:
download.file(
"http://cran.r-project.org/src/contrib/Archive/boot/boot_1.3-7.tar.gz",
"boot"
)
install.packages("boot", repos = NULL, type = "source")
ma preferirei farlo con una singola chiamata a solo install.packages
; e dal momento che install.packages
è in grado di scaricare i file comunque, penso che questo dovrebbe essere possibile.
Il pacchetto non è stato trovato nella chiamata originale perché non è lì. È 'boot_1.3-9.tar.gz' in quella directory. –
@ SimonO101 mi dispiace che sia stato un errore che ho fatto nello scrivere la domanda. Ripararlo non cambia il comportamento purtroppo. – orizon
Perché non impostare la directory in cui si memorizza il pacchetto sorgente come repository? [Ecco un esempio] (http://stackoverflow.com/questions/2905650/creating-a-local-r-package-repository), anche se probabilmente vorrai sostituire 'type =" source "' per 'type = "win.binary" ' –