尽管使用.Rprofile,仍加载了R默认软件包

时间:2018-11-30 15:19:05

标签: r

我在RGui / RStudio中使用R 3.5.1,并在用户主目录中使用“ .Rprofile”文件(只有一个条目)来预加载软件包“ tidyverse”:library(tidyverse)

当要使用软件包'dplyr'的filter()函数时,它会被软件包'stats'的filter()函数掩盖,该软件包已在采购'.Rprofile'之后作为默认软件包加载在R启动过程中。

此行为似乎与?Startup告诉我们的是矛盾的:“请注意,当网站和用户个人资料文件的来源是仅加载基本包时,因此其他包中的对象需要通过utils :: dump.frames进行引用,或者在显式加载相关程序包之后进行引用。”

有人可以告诉我,为什么尽管使用了用户配置文件,还是会默认加载“ stats”之类的默认软件包?非常感谢!

2 个答案:

答案 0 :(得分:0)

我的问题已经在这里得到解答:R dplyr filter not masking base filter? [duplicate]

如前所述,?Startup的文档说:

  

请注意,当获取网站和用户配置文件的文件时,仅会加载基本软件包,因此其他软件包中的对象需要用例如来引用。 utils :: dump.frames或显式加载有关的软件包之后。

不幸的是,这很容易被误解,因此最初引起了我的疑问。短语“ 仅加载基本软件包”表示在启动过程中仅将base软件包作为第一个软件包加载,而其他默认软件包(例如{{1})将加载}将在通过用户stats文件获取的软件包之后加载。

这就是为什么在启动过程中将软件包.Rprofile的{​​{1}}函数加载到用户filter()文件中的原因被默认的dplyr函数掩盖了软件包.Rprofile,在源用户filter()文件之后加载。

答案 1 :(得分:0)

duba在R加载基本库之前运行 首先加载软件包.Rprofile

stats