如何在OSX上自动加载R中的设置?如何找到R_HOME,配置Rprofile.site等?

时间:2011-03-14 23:52:34

标签: r startup

我有一台Macintosh,我试图自动加载软件包,自制函数,并在每次启动R时使用修改后的设置。我相信这可以通过一个名为Rprofile.site的文件来完成,并通过创建函数来实现。和。最后在那个文件中。

一个问题是,我不知道我的R_HOME目录是什么,它用于什么,或者它是否存在。我找到了两个功能,我认为它们都给了我它的位置,但我得到了不同的结果。

这是第一个

> Sys.getenv("R_home")
R_home 
    ""

第二个

> R.home()
[1] "/Library/Frameworks/R.framework/Resources"

据我所知,我的机器上甚至不存在第二个目录。我目前正在从我的应用程序目录运行R.

3 个答案:

答案 0 :(得分:20)

多年来,我开始依赖help(Startup)文档作为阅读本文的最佳位置。按照丰富的应用程序的惯例,有许多每用户和每站点配置文件。一开始可能看起来有些过分,但这是一个非常好的系统。一旦你了解RenvironRenviron.site和dito for Rprofile,你就会欣赏跨平台的一致行为。

答案 1 :(得分:15)

迈克尔,我也发现这个话题有点令人困惑。我也在Mac上。我创建了一个“Rprofile”文件,其中包含我的所有自定义。这是我的工作方式(我不认为我的设置有什么特别之处):

  1. “Rprofile”进入/ Users / michael
  2. “Rprofile”必须由R理解的命令组成(例如,您可以获取它)。
  3. 必须调用“Rprofile”.Rprofile前导时段表示文件对正常操作系统隐藏。您必须打开终端窗口并执行> ls -la才能看到它(假设您在必要时cd到该目录)。另外,你会看到很多其他隐藏文件。它可能在您创建它之前不存在,下一步。
  4. 我使用TextEdit创建一个名为R.txt的文件并将命令放在那里(开始时很简单,以便进行测试)。
  5. 然后,在终端窗口中,键入> cp R.txt .Rprofile,将可见的R.txt复制到不可见的.Rprofile您可以再次检查> ls -la来查看目录列表
  6. 重新启动R并查看它是否有效。例如,如果将库(ggplot2)放在R.txt中,则应在启动时加载该库。如果没有,则来自该库的命令将不起作用,如qplot(x = 1:10,y = 1:10)。其他人输入像cat(“我的.Rprofile工作!\ n)”这样的命令,这些命令应该在启动时显示。
  7. HTH Bryan

答案 2 :(得分:2)

如果您运行getwd(),那么您将看到您的R启动目录。在Mac上,它通常是/User/login_name 这就是我将.RProfile留给我加载自定义函数以及经常使用的包的地方。

另见:Useful little functions in R(放入.RProfile) 和Expert R users, what's in your .Rprofile?…