您的位置:首页 > 其它

R的启动顺序及执行文件

2015-07-14 12:02 295 查看
R的启动顺序

R启动时的一系列过程(使用help(Startup)命令查看详细信息):

如果没有在命令行中执行(--no-environ),R会搜索并执行站点文件(Rprofile.site)和用户文件(.Rprofile)。

1.R执行Rprofile.site中的脚本。这个脚本文件是系统级的脚本,它允许系统管理员对默认选项进行自定义修改。

该代码文件的完整路径为R_HOME/etc/Rprofile.site(其中,R_HOME是R的主目录)。

注意:R发行版中不包含Rprofile.site文件,所以系统管理员可以根据需要自行建立该文件。

2.R执行工作目录中的.Rprofile脚本文件;若该文件不存在,则执行用户主目录中的.Rprofile文件。

在这一步用户可根据自己的需要来对R进行客户化。用户主目录中的.Rprofile文件用于全局性的客户化。

当R在低级别的目录启动时,这个低级别目录下的.Rprofile脚本文件也可以对在本目录下启动的R进行客户化。

例如,对启动于某个项目目录下的R进行客户化。

3.如果当前工作目录中有.RData文件,那么R将载入该.RData文件中保存的工作空间。

R在退出时会将工作空间保存到一个名为.Rdata的文件中。它将从该文件中载入你的工作空间,并恢复访问原来的局部变量和函数。

4.如果你定义过.First函数, R将执行该函数。.First函数是用户或项目定义启动初始化代码的好地方,你可以在.Rprofile文件或工作空间中来对该函数进行定义。

5.R执行.First.sys函数。这一步会载入默认的R包,该函数是R的内部函数,一般用户或管理员不需要对其修改。

注意,R直到最后一步执行.First.sys函数时才会载入默认R包。在这之前只有基础R包会载入。

这一点很重要,因为它意味着之前几步不能假定除基础R包以外的软件包会载入。

这也是为什么在.Rprofile脚本文件中试图打开绘图窗口时会出错:因为绘图R包还未载入。

> Sys.getenv("R_HOME") ; #获取环境变量R_HOME的目录

[1] "/usr/local/lib64/R"

> getwd(); #获取当前目录

[1] "/home/enn_james"

> sessionInfo() ; #查看环境变量

>Sys.setlocale(category = "LC_CTYPE", "zh_CN.UTF-8") ; #设置中文字体,注意:在R的命令窗口中设置环境变量,重启之后又没了,只是临时改动

Linux下R的启动过程:

启动时,R会加载R_HOME/etc目录中的Rprofile.site文件(站点初始化文件)或者.Rprofile(目录初始化文件)来找到自定义R的环境

【设置个性化的启动】

Linux下,在主目录中建立名为.Rprofile(~/.Rprofile)的脚本文件来对R进程进行客户化,R会在启动时执行该文件。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: