Establecer espejo CRAN predeterminado permanente en R


102

¿Cómo puedo configurar un espejo CRAN específico de forma permanente en R?

Quiero configurarlo permanentemente en mi computadora portátil para que cuando lo haga install.packages(), no me vuelva a preguntar qué espejo elegir.


1
Consulte stackoverflow.com/questions/1189759/… para ver ejemplos de .Rprofile.
jthetzel

4
es posible que desee editar el Rprofilearchivo global . En las plataformas * NIX, está ubicado en /usr/lib/R/library/base/R/Rprofile. Solo tenga cuidado ... y tenga en cuenta que la .Rprofileconfiguración local tiene prioridad.
aL3xa

1
Siguiendo con el comentario de @ aL3xa, vea ?Startuplos detalles realmente sangrientos de dónde se pueden ubicar los archivos `.Rprofile y cuáles tienen prioridad.
Josh O'Brien

Y observe los objetos .Firsty .Last.
aL3xa

Respuestas:


118

Puede establecer acuerdos de recompra en su .Rprofile para restaurar su elección cada vez que se inicia R

Editar: para ser más precisos:

Añadir

options(repos=structure(c(CRAN="YOUR FAVORITE MIRROR")))

a su .Rprofile


Alternativamente, puede configurar el sitio espejo para todo el sitio en su Rprofile.site. La ubicación del archivo viene dada por ?Startup:

La ruta de este archivo se toma del valor de la R_PROFILE variable de entorno (después de la expansión de tilde). Si esta variable no está configurada, el valor predeterminado es R_HOME/etc/Rprofile.site, que se usa si existe (lo cual no ocurre en una instalación 'nueva de fábrica').

Lo mismo ocurre Sys.getenv("R_PROFILE")con la primera opción Sys.getenv("R_HOME")o R.home()con la segunda opción. En macOS, la ubicación del segundo es /Library/Frameworks/R.framework/Resources/etc/.

Es posible que el archivo no exista o que vea las siguientes líneas comentadas:

# set a CRAN mirror
# local({r <- getOption("repos")
#       r["CRAN"] <- "http://my.local.cran"
#       options(repos=r)})

Por lo tanto, elimine las marcas de comentarios y cambie " http: //my.local.cran " al sitio web correcto, por ejemplo:

local({r <- getOption("repos")
       r["CRAN"] <- "http://cran.r-project.org"
       options(repos=r)})

1
Agregué información adicional, ya que no valía la pena una respuesta adicional y demasiado para un comentario.
Joris Meys

2
No creo que la llamada a structureesté haciendo nada. Por lo general, es solo una forma conveniente de agregar atributos a un objeto.
Richie Cotton

@rinni: gracias, busqué en Google la lista de URL y encontré la más cercana a la que describiste en el .Rprofilearchivo.

3
No parece haber un RProfile.sitearchivo en mi R 3.3.1 en Arch Linux x86_64. Hay un archivo llamado RProfileque no contiene las líneas comentadas mencionadas en la respuesta.
SACHIN GARG

5
donde "YOUR FAVORITE MIRROR" es la URL, no el nombre.
pdb
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.