如何自动加载程序包中的R?如何自动加载程序包中的R?(How to load packages in

2019-05-13 14:56发布

你可以建议我要R中自动加载包的方法吗? 我的意思是,我要开始R中的会话,而无需使用library('package name')几次。 假设我下载了所有的包,我会想用接下来的时间,我开始R.

Answer 1:

library(foo).Rprofile文件或设置R_DEFAULT_PACKAGES :看?Rprofile ...

特别是(因为?Rprofile是长期和潜在的恐吓):

如果你想有一个不同的组包比当您启动默认的的,插在“.Rprofile”“选项”或‘Rprofile.site’文件的调用。 例如,“选项(defaultPackages =字符())”将附加在启动时没有额外的包(仅“基地”包)(或一组“R_DEFAULT_PACKAGES = NULL”作为环境变量运行v之前)。 使用'选项(defaultPackages = “”)'或'R_DEFAULT_PACKAGES = “”'强制执行R 系统默认。

因为你可能希望所有的默认包的加载,然后额外那些除了(而不是说,不加载某些默认的软件包),你可以把

library("mypackage1")
library("mypackage2")
[etc.]

或使用options(defaultPackages=...)

options(defaultPackages=c(getOption("defaultPackages"),
       "mypackage1","mypackage2", ... [etc.]))

.Rprofile到您想要的套餐附加到标准缺省值。

编辑 (从评论复制)重新得到这个在工作Rstudio : http://rstudio.org/docs/using/workspaces表明Rstudio执行.Rprofile ,然后“执行中的R启动[描述的其他动作的http://统计.ethz.ch / R-手动/ R-修补/库/碱/ HTML / Startup.html ]”(这是一样的?Rprofile )。 它是暧昧是否着眼于Rprofile.site与否。

编辑#2:根据下面发表评论,但它有一个新版本的Rstudio的工作。



Answer 2:

有一个叫做.Rprofile该文件只不过是运行每次启动R的一个新的会话脚本

什么,你需要做的就是添加library(package)给它。 如果您使用的Unix,它可能在你的主文件夹为隐藏文件。



Answer 3:

在自定义[R启动快速-R页基本上包含比本的和若昂的回答同样的信息,但它也许是一个更清楚一点。 创建副本Rprofile.site与个人文件夹所需的更改(在Windows文件)文件,并调用它.Rprofile

编辑:我注意到的是,R 3.0.0不看的文档文件夹的任何时间较长,但在Windows 7使用用户的主目录(用户名),这可能是安装问题,虽然(即我正好安装R“错误”先前)。 然而,在这个答案链接快速-R页讲述这样做的正确方法。 如果有其他人遇到此问题,解决的办法是复制.Rprofile到用户的主目录。



Answer 4:

简单的回答是,你应该把你的R封装在.Rprofile文件,大家都建议。

但是请注意,R将读取该文件, 然后加载R基本包 。 从见?启动 :

请注意,当网站和用户配置文件都被只有基本包被加载,

这可能会导致问题,如果你想包加载增强/覆盖一些R基本功能。 例如,见有tidyverse ::过滤器: https://github.com/tidyverse/dplyr/issues/1611

我可以看到两个方案至今:

  1. 使用.First.sys()在你的第一行.Rprofile文件:这是通常读.Rprofile,加载该程序包中后运行命令getOption("defaultPackages")

  2. 更新的选项defaultPackages:不使用library()在你的.Rprofile,但类似。

     old <- getOption("defaultPackages") options(defaultPackages = c(old, "tidyverse")) 


文章来源: How to load packages in R automatically?