通过Rstudio中的Rprofile.site加载dplyr

时间:2014-09-23 14:23:53

标签: r rstudio dplyr

自从我找到它之后,我就虔诚地使用了dplyr。由于我使用它太多,我尝试将library(dplyr)放在Rprofile的.First()函数中。

加载dplyr,但是当我启动Rstudio时,一些dplyr的函数被屏蔽了。例如,当我尝试这样做时:

foo <- mtcars %>% filter( cyl == 4 )

我收到以下错误:

Error in filter(mtcars, cyl == 4) : object 'cyl' not found

一些故障排除显示,如果我在控制台中再次运行库(dplyr),问题就会立即清除 - 显然,dplyr的一些功能会被搜索路径中的某些东西掩盖(或者,取决于你如何看待它。

当我查看我的search()路径时,我发现在dplyr之后还有许多其他软件包正在加载,这不是我想要的(我不喜欢dplyr是最后一个东西加载,或至少接近最后):

[1] ".GlobalEnv"        "tools:rstudio"     "package:stats"     "package:graphics"  "package:grDevices" "package:utils"    
[7] "package:datasets"  "package:xlsx"      "package:xlsxjars"  "package:rJava"     "package:dplyr"     "package:methods"  
[13] "Autoloads"         "package:base" 

我在Windows 7上使用RStudio v.0.98.1028。因为我真的不清楚Windows + RStudio如何处理主目录,所以我在C:/Program Files/R/R-3.1.1/etc/编辑了Rprofile。有什么建议吗?

1 个答案:

答案 0 :(得分:4)

在R的启动顺序中(请参阅?Startup),.First()在加载其他包之前调用.First.sys()stats包裹会覆盖filter

.First.sys()使用options("defaultPackages")来确定要加载的内容,因此我建议您在.First()函数中使用以下内容对其进行编辑:

options(defaultPackages=c(getOption("defaultPackages"),"dplyr"))