|
本帖最后由 Silver_ 于 2015-9-29 18:41 编辑
首先,我是个昨天才接触R语言的菜鸟,如果大神们有更好的办法求推荐!{:soso_e163:}
经过这两天的接触,我觉得R语言的使用真是太方便了!
但是唯一有一点让人不爽的就是,每一次重新打开R的时候就需要一个一个去点击加载需要的R包。
我就想,有没有办法可以让R一打开就自动加载这些R包呢?
——————
网上查到的基本都是Win/UBUNTU系统的使用办法:
#以下为引用自:troy杨
于 http://blog.sina.com.cn/s/blog_50ccfc410101eigd.html 的发言
windows环境下,R启动时会到R_Home\etc目录下找Rprofile.site文件,其中“R_Home”指的是R安装目录,例如c:\R。可以用notepad等文本编辑器打开c:\R\etc\Rprofile.site,进行修改
# Things you might want to change
# 下面是常规设置,包括,默认编辑器、制表符宽度等等
# options(papersize="a4")
# options(tab.width=2)
# options(editor="notepad")
# options(pager="internal")
# set the default help type
# options(help_type="text")
options(help_type="html")
# set a site library
# 自定义库路径,便于备份
# .Library.site <- file.path(chartr("\\", "/", R.home()), "site-library")
# set a CRAN mirror
# 设置CRAN镜像,选一个最近源,这样安装和更新包时就不用手动选取CRAN镜像了
local({r <- getOption("repos")
r["CRAN"] <- "http://ftp.ctex.org/mirrors/CRAN/"
options(repos=r)})
# Give a fortune cookie, but only to interactive sessions
# (This would need the fortunes package to be installed.)
# if (interactive())
# fortunes::fortune()
.First <- function(){
# 设置R启动时加载的包
library(TSA)
library(MASS)
# 启动时交互,可自定义
cat("\nWelcome at",date(),"\n")
}
# 退出时交互
.Last <- function(){
cat("\nGoodnye at",date(),"\n")
}
.First()函数中除了加载常用package之外,还可以加载保存自己编写的常用函数的源代码文件
.Last()函数可以执行推出时清理工作,如保存命令历史记录、保存数据输出和数据文件等等
#以下为引用自:dengkewen
于 http://bbs.pinggu.org/thread-1390361-1-1.html 的发言
UBUNTU系统中,/etc/R/Rprofile-site的确存在,但修改它是没有意义的,应该把该文件拷备到/usr/local/lib/R/etc/目录下,再按上述方法修改,则成功!这问题困扰了我两天,终于完美解决,我的Rprofile-site具体设置内容如下:
# 设置常用选项
options(papersize="a4")
options(editor="notepad")
options(pager="internal")
options(tab.width = 2)
options(width = 130)
options(graphics.record=TRUE)
options(show.signif.stars=FALSE)
# 设置R交互提示信息
options(prompt="> ")
options(continue="+ ")
.libPaths("/usr/local/lib/R/site-library") # 设置包的本地库(library)路径
# 添加knitr以及dprep两个我很常用的包:
local({old<-getOption("defaultPackages")
options(defaultPackages=c(old,"knitr","dprep"))})
# 启动函数
#.First <- function(){
#library(knitr)
#library(dprep)
#source("C:/mydir/myfunctions.R")
#cat("\nWelcome at", date(), "\n")
#}
# 会话结束函数
.Last <- function(){
cat("\nGoodbye at ", date(), "\n")
}
而在Mac方面,我也看到了一种解决办法——
#以下为引用自:pinkcoala
于 http://www.douban.com/note/498175361/ 的发言
今天在用R软件的时候,想查一下mac系统下,R自动加载函数的问题。经过略曲折的学习,解决方法如下,其实还蛮简单的。
我的电脑系统是OS X Yosemite 10.10.3,R version 3.1.2 ,安装的R没有.Rprofile文件,所以我自己新建了该隐藏文件,文件需放在/Users/YOUR_NAME/.Rprofile。
在.Rprofile文件里可以加载软件包、写入函数。这些包和函数都会随R的启动自动运行。PS函数的最后一个}后需要空一行。
——————
于是,结合了各方的知识,我这边也整理出了解决Mac系统的R软件自动加载R包的方案:
1.利用文档编辑器,在/Users/YOUR_NAME/ 建立.Rprofile文件
【推荐使用 Sublime Text,个人觉得挺不错的】
2.如果只是需要自动加载R包的话,那么只需要在.Rprofile文件中输入这部分代码就可以解决:
- .First <- function(){
- # 设置R启动时加载的包
- library(MASS)
- library(base)
- }
复制代码
经过验证,这些包确实会随R的启动自动运行。(我用的是Rstudio,运行没有问题)
需要注意的是:函数的最后一个""}"后需要空一行。
以上就是如何在Mac系统中,在每次R软件启动的时候,自动加载所需R包的方法了。
是不是很简单呢?
反正我自己是觉得超级简单就是了!XD
【新人拜帖,希望大家喜欢,以及多多指教】
|
|