ventajas studio sirven que para paquetes paquete los library lenguaje instalar guardan donde agricolae r

studio - r project



Instale un paquete R directamente desde una URL para el origen del paquete (3)

Me gustaría instalar un paquete directamente desde una URL para el origen del paquete. Quiero hacer esto para que a las personas les resulte más fácil probar una versión preliminar del paquete que no debería estar disponible de forma generalizada o permanente. This es una pregunta similar pero es diferente porque solo describe cómo instalar desde archivos locales, no URL generales.

Por el bien de esta pregunta, usaré un enlace a la fuente del paquete de boot . ?install.packages Leyendo ?install.packages particularmente la descripción del argumento pkgs sugiere:

install.packages( "http://cran.r-project.org/src/contrib/Archive/boot/boot_1.3-7.tar.gz", repos = NULL, type = "source" )

Sin embargo esto falla 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

Lo que sugiere que la URL se interpreta como el nombre del paquete, no su ubicación. Podemos solucionar esto con el siguiente procedimiento de dos pasos:

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")

Pero preferiría hacer esto con una sola llamada a install.packages solamente; y dado que install.packages es capaz de descargar archivos de todas formas, creo que esto debería ser posible.


¿Por qué no configurar el directorio en el que almacena el paquete fuente como un repositorio?

Aquí hay un ejemplo (aunque es probable que desee sustituir type="source" por type="win.binary" en el código de ese enlace).


Ver ?install_url Install_url en el paquete devtools.


install.packages ahora funciona con las URL de http (aún no https) a partir de 3.1.1. Esto funciona para mí:

install.packages("http://www.lepem.ufc.br/jaa/colorout_1.1-0.tar.gz", repos=NULL)

Edición: A partir de R 3.2.0, https está integrado a través de libcurl. Esto debería funcionar ahora:

install.packages("https://github.com/hadley/devtools/archive/v1.7.0.tar.gz", repos=NULL, method="libcurl")

Edición: a partir de R 3.2.2, https debería funcionar con las opciones predeterminadas, suponiendo que se compiló el soporte de libcurl.

Edición 2016-04-20: puede haber algunos problemas al descargar paquetes alojados en S3, pero method=''wget'' parece funcionar para aquellos por ahora.