Imposta predefinito CRAN mirror permanente in R


102

Come posso impostare un mirror CRAN specifico in modo permanente in R?

Voglio impostarlo in modo permanente nel mio laptop in modo che quando lo faccio install.packages(), non mi chieda più quale specchio scegliere.


1
Vedere stackoverflow.com/questions/1189759/... per gli esempi .Rprofile.
jthetzel

4
potresti voler modificare il Rprofilefile globale . Sulle piattaforme * NIX, si trova in /usr/lib/R/library/base/R/Rprofile. Fai solo attenzione ... e nota che le .Rprofileimpostazioni locali hanno la precedenza.
aL3xa

1
Seguendo il commento di @ aL3xa, vedere ?Startupper i dettagli davvero cruenti su dove possono essere trovati i file `.Rprofile e quali hanno la precedenza.
Josh O'Brien

E per favore nota gli oggetti .Firste .Last.
aL3xa

Risposte:


118

È possibile impostare i pronti contro termine nel vostro .Rprofile per ripristinare la vostra scelta ogni volta che si avvia R

Modifica: per essere più precisi:

Inserisci

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

al tuo .Rprofile


In alternativa, puoi impostare il mirror a livello di sito nel tuo file Rprofile.site. La posizione del file è data da ?Startup:

Il percorso di questo file è preso dal valore della R_PROFILE variabile d'ambiente (dopo l'espansione della tilde). Se questa variabile non è impostata, il valore predefinito è R_HOME/etc/Rprofile.site, che viene utilizzato se esiste (cosa che non è presente in un'installazione "fresca di fabbrica").

Quindi fai Sys.getenv("R_PROFILE")per la prima opzione, o Sys.getenv("R_HOME")o R.home()per la seconda opzione. Su macOS, la posizione del secondo è /Library/Frameworks/R.framework/Resources/etc/.

Il file potrebbe non esistere o potresti vedere le seguenti righe commentate:

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

Quindi rimuovi i contrassegni di commento e modifica " http: //my.local.cran " con il sito web corretto, ad esempio:

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

1
Ho aggiunto informazioni extra, poiché non valeva una risposta in più e un po 'troppo per un commento.
Joris Meys

2
Non credo che quella chiamata a structurestia facendo qualcosa. Di solito è solo un modo conveniente per aggiungere attributi a un oggetto.
Richie Cotton

@rinni: grazie, ho cercato su Google per l'elenco di URL trovato quello a cui sono più vicino come descritto nel .Rprofilefile.

3
Non sembra esserci un RProfile.sitefile nella mia R 3.3.1 su Arch Linux x86_64. C'è un file denominato RProfileche non contiene le righe commentate menzionate nella risposta.
SACHIN GARG

5
dove "YOUR FAVORITE MIRROR" è l'URL, non il nome.
PDB
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.