Ryan Peek on Customizing Your R Setup
Ryan Peek showed us how
to use an .Rprofile
file to customize your R setup. Here are his
instructions and script:
For Windows
-
To change profile for R, go here:
C:\Program Files\R\R-2.15.1\etc
(or whatever version you are using) - Edit the “Rprofile.site” file
- Restart R
For Macs
-
Create your Rprofile file. -use TextEdit or another editor to create a file called Rprofile.txt
-
In a terminal window, type:
>> cp Rprofile.txt .Rprofile
(which copies the visible Rprofile.txt to the invisible .Rprofile)
- You can check this by doing
>ls -la
again to see it in the directory listing.
- You can check this by doing
-
Restart R
Note that you can save .Rprofile
in your home directory, or, if you
are using R Studio, in a project directory. In the latter case, the
profile will only be loaded when you load that project.
Things to put in the .Rprofile
file:
Set a local CRAN Mirror:
local({r <- getOption("repos")
r["CRAN"] <- "http://cran.cnr.berkeley.edu/"
options(repos=r)})
Set machine-specific options: If you use Dropbox or something
similar to sync R files across computers, you can use Sys.info()
to
set options specifically for your machine. This code sets the root path
differently for different machines:
if(Sys.info()[4]=="Work-PC") {
root<-"C://Users//Ryan//Desktop//Dropbox//R//"
} else if(Sys.info()[4]=="Mac.local") {
root<-"/Users/Ryan/Dropbox/R/"
} else {
root<-"C://Users//rapeek//Dropbox//R//"
}
Set a welcome message and load a file of other useful functions:
Anything in the .First
function is run on startup
.First <- function(){
cat("\nWelcome to R!\n",sep="")
cat("---------------\n\n",sep="")
if(file.exists("~/RbasicFunctions_example.r")){
source("~/RbasicFunctions_example.r")
cat("RbasicFunctions_example.r was loaded, providing the following functions:\n\n",sep="")
cat("use 'print.functions()' to view\n",sep="")
}
}
Helper functions
Here’s Ryan’s file, called above as RbasicFunctions_example.r
, which
has his helper functions. Running print.functions()
will display a
list of these with short explanations:
A lot of other useful options for R profile files are found in this Stack Overflow discussion