用户可以有好几种办法定制环境。可以修改
位置初始化文件,并且每个目录都有它特有的一个
初始化文件。还有就是利用函数
.First 和 .Last。
位置初始化文件的路径可以通过 环境变量 R_PROFILE 设置。如果该变量没有设置, 默认是R安装目录下面的子目录 etc 中的 Rprofile.site。这个文件包括你每次执行 R 时一些自动运行的命令。第二个定制文件是 .Rprofile1,它可以放在任何目录下面。如果 R 在该目录下面 被调用,这个文件就会被载入。这个文件允许用户 定制它们的工作空间,允许在不同的工作目录下 设置不同的起始命令。如果在起始目录中没有 .Rprofile, R 会在用户主目录下面搜索 .Rprofile 文件并且调用它 (如果它 存在的话)。
在这两个文件或者 .RData 中任何叫 .First() 的函数
都有特定的状态的。它会在
R 对话的开始时自动执行并且初始化环境。
下面例子中的定义允许
将提示符改为 $,以及设置其他有用的东西。
这些设置同样会在其他会话中起作用。
因此,这些文件的执行顺序是 Rprofile.site,
.Rprofile,.RData 然后是 .First()。后面文件中
定义会屏蔽掉前面文件中的定义。
> .First <- function() {
options(prompt="$ ", continue="+\t") # $ is the prompt
options(digits=5, length=999) # custom numbers and printout
x11() # for graphics
par(pch = "+") # plotting character
source(file.path(Sys.getenv("HOME"), "R", "mystuff.R"))
# my personal functions
library(MASS) # attach a package
}
相似的是,如果定义了函数 .Last(),它(常常)会在对话
结束时执行。一个例子就是
> .Last <- function() {
graphics.off() # 一个小的安全措施。
cat(paste(date(),"\nAdios\n")) # 该吃午饭了?
}