¿Cómo cambiar.libPaths() permanentemente en R?
(2)
Cada vez que cambio el orden de la ruta de la biblioteca con la función .libPaths() , vuelve al valor predeterminado si reinicio R. ¿Cómo puedo cambiar esto permanentemente? Estoy trabajando en un clúster informático de Linux (no tengo derechos de administrador), así que quiero agregar mi biblioteca local a R de forma permanente.
Tengo que hacer esto cada vez que empiezo R
.libPaths(c("/home/...","/home...","/local/library"))
2 soluciones principales:
En
.Rprofilepuedes dejar el código que establece.libPaths()Simplemente configure la variable de entorno adecuada, como
R_LIBSen Windows oR_LIBS_SITE=en Linux, etc., a lo que desee, por ejemploR_LIBS=C:/R/Library
Para completar, y como no puedo mostrar esto en un comentario:
1) Predeterminado en todos los sistemas Debian y Ubuntu con el paquete R enviado:
edd@max:~$ R -q -e ''print(.libPaths())''
R> print(.libPaths())
[1] "/usr/local/lib/R/site-library" "/usr/lib/R/site-library"
[3] "/usr/lib/R/library"
R>
R>
2) Que podemos alterar modificando R_LIBS_SITE :
edd@max:~$ R_LIBS_SITE="/usr/lib/R/Library" R -q -e ''print(.libPaths())''
R> print(.libPaths())
[1] "/usr/lib/R/library"
R>
R>
3) Pero la modificación de R_LIBS no funciona:
edd@max:~$ R_LIBS="/usr/lib/R/Library" R -q -e ''print(.libPaths())''
R> print(.libPaths())
[1] "/usr/local/lib/R/site-library" "/usr/lib/R/site-library"
[3] "/usr/lib/R/library"
R>
R>
edd@max:~$
Consulte la help(Startup) para el tratamiento completo y detallado. En Debian y Ubuntu, hemos estado configurando estos tres directorios como el predeterminado para todos los usuarios durante más de una década. Como se establece a través de R_LIBS_SITE aquí, esta es la variable que necesita modificar aquí. En general, debe anular la variable que tiene el valor y es posible que no sepa a priori cuál es.
En cuanto a la respuesta original, en Debian y Ubuntu usamos el archivo /etc/R/Renviron . Como detalles de help(Startup) , puede establecer varias formas de modificar esto de forma permanente para su inicio, y todos estos puntos se aplican a todos los diferentes sistemas operativos:
-
Renvironarchivos del sistema comoRenvironoRenviron.sitesi tiene los permisos adecuados. - De lo contrario, altere el archivo por usuario
~/.Renviron - Alternativamente, modifique las variables de entorno
R_LIBSoR_LIBS_USERoR_LIBS_SITEen el nivel del sistema si tiene los permisos adecuados - Si no, modifique las variables
R_LIBSoR_LIBS_USERoR_LIBS_SITEen el nivel de usuario. - Por último, llame a
.libPaths(...new path to be added here...)en sus archivos de inicio de R como, por ejemplo, en.Rprofile.
Ver help(Startup) para una discusión más completa.