R Language
.Rprofile
Ricerca…
Osservazioni
C'è un bel capitolo sull'argomento nella programmazione R efficiente
.Rprofile - il primo blocco di codice eseguito
.Rprofile
è un file contenente codice R che viene eseguito quando si avvia R dalla directory contenente il file .Rprofile
. Il nome Rprofile.site
, che si trova nella home directory di R, viene eseguito di default ogni volta che carichi R da qualsiasi directory. Rprofile.site
e in una maggiore estensione .Rprofile
può essere utilizzato per inizializzare una sessione R con preferenze personali e varie funzioni di utilità che sono state definite.
Nota importante: se si utilizza RStudio, è possibile avere un profilo
.Rprofile
separato in ogni directory di progetto RStudio.
Ecco alcuni esempi di codice che potresti includere in un file .Rprofile.
Impostazione della directory home R
# set R_home
Sys.setenv(R_USER="c:/R_home") # just an example directory
# but don't confuse this with the $R_HOME environment variable.
Impostazione delle opzioni per le dimensioni della pagina
options(papersize="a4")
options(editor="notepad")
options(pager="internal")
imposta il tipo di guida predefinito
options(help_type="html")
impostare una libreria del sito
.Library.site <- file.path(chartr("\\", "/", R.home()), "site-library")
Imposta un mirror CRAN
local({r <- getOption("repos")
r["CRAN"] <- "http://my.local.cran"
options(repos=r)})
Impostazione della posizione della libreria
Ciò ti consentirà di non dover installare di nuovo tutti i pacchetti con ogni aggiornamento della versione R.
# library location
.libPaths("c:/R_home/Rpackages/win")
Scorciatoie o funzioni personalizzate
A volte è utile avere una scorciatoia per una lunga espressione R. Un esempio comune di questa impostazione di un binding attivo per accedere all'ultimo risultato di espressioni di primo livello senza dover digitare .Last.value
:
makeActiveBinding(".", function(){.Last.value}, .GlobalEnv)
Perché .Rprofile è solo un file R, può contenere qualsiasi codice R arbitrario.
Pre-caricamento dei pacchetti più utili
Questa è una cattiva pratica e dovrebbe essere generalmente evitata perché separa il codice di caricamento del pacchetto dagli script in cui tali pacchetti vengono effettivamente utilizzati.
Guarda anche
Vedere la guida help(Startup)
per tutti i diversi script di avvio e altri aspetti. In particolare, possono essere caricati anche due file di Profile
livello di sistema. Il primo, Rprofile
, può contenere impostazioni globali, l'altro file Profile.site
può contenere scelte locali che l'amministratore di sistema può fare per tutti gli utenti. Entrambi i file si trovano nella ${RHOME}/etc
dell'installazione R. Questa directory contiene anche i file globali Renviron
e Renviron.site
che possono essere completati entrambi con un file locale ~/.Renviron
nella home directory dell'utente.
. Esempio di profilo
Avviare
# Load library setwidth on start - to set the width automatically.
.First <- function() {
library(setwidth)
# If 256 color terminal - use library colorout.
if (Sys.getenv("TERM") %in% c("xterm-256color", "screen-256color")) {
library("colorout")
}
}
Opzioni
# Select default CRAN mirror for package installation.
options(repos=c(CRAN="https://cran.gis-lab.info/"))
# Print maximum 1000 elements.
options(max.print=1000)
# No scientific notation.
options(scipen=10)
# No graphics in menus.
options(menu.graphics=FALSE)
# Auto-completion for package names.
utils::rc.settings(ipck=TRUE)
Funzioni personalizzate
# Invisible environment to mask defined functions
.env = new.env()
# Quit R without asking to save.
.env$q <- function (save="no", ...) {
quit(save=save, ...)
}
# Attach the environment to enable functions.
attach(.env, warn.conflicts=FALSE)