R的安装与配置
王诗翔 · 2018-08-10
分类:
r  
标签:
r  
installation  
Windows R安装好后配置是本文的重点。关于Windows R的安装,百度有一大堆的教程。其中重点有3:
- 安装R,下载https://mirrors.tuna.tsinghua.edu.cn/CRAN/bin/windows/base/R-3.5.1-win.exe
- 安装RStudio,下载https://download1.rstudio.org/RStudio-1.1.456.exe
- (可选)安装Rtools,这个是用来编译源码包的,一般是含有其他语言写的包需要该步骤,下载https://mirrors.tuna.tsinghua.edu.cn/CRAN/bin/windows/Rtools/Rtools35.exe
上述所有链接都是2018-08-10的最新版本。
根据我这一年多反复安装R,遇到错误不得不重装R的一些经历,在安装时有以下几个重要的建议:
- 尽量不要安装在
Program files
相关目录下,考虑到现在大多数电脑都是一个C盘,可以选择在C盘下创建一个目录专门用来装R、R包以及R tools。下面展示的就是我选择了C:/Tools
作为本文软件安装的目录。大家根据自己电脑合理选择,有其他盘的朋友可以装到其他盘。带固态硬盘的最好装到固态硬盘目录里,因为读写数据快。 - 一般现在电脑是64位的,如果你确定是这样,在安装时有关于32位的选项都可以不勾选。
- 涉及到添加环境变量/路径之类的,勾选添加即可。
- 以上没提到的,一路点下一步。
注意,R和RStudio可以单独安装,但RStudio只有在R安装好了以后才能正常使用。
配置
Windows R默认使用用户文档目录作为家目录(等同于Linux中的~
),使用系统指定的临时目录作为临时目录,使用安装路径下的R版本/library
目录作为R包存储目录。
如果你什么都选择默认的,
- 当你一时安装包过多,或者装了电脑管家之类的管理软件时,系统的临时目录经常会把RStudio锁死,导致不能进行读写。
- 当你想要更新R版本时,你不得不面临重装所有包的举动(如果你使用几个月,装了几百个包~~),或者想其他办法解决。
下面就是教你自己创建自定义的临时目录与包目录,这样上面情况都不会发生了。
具体操作
在安装好R和RStudio后,打开RStudio,在R控制台键入:
file.edit("~/.Rprofile")
在启动RStudio时,RStudio会首先执行里面的R代码,所以我们可以在这里用R代码进行配置。
在该文档内添加内容:
#--------------------------------------------
# Set custom library and temp directory for R
# NOTE: please only change following 2 paths
# Any Question, please email to
# Shixiang Wang <w_shixiang@163.com>
#--------------------------------------------
.CUSTOM_LIB = "C:/Tools/R/R_Library" # set your custom library location
.TMP = "C:/Tools/R/Rtmp" # set a temp dir for R running
# please do not add '/' at the end !!!
if(!dir.exists(.CUSTOM_LIB)){
dir.create(.CUSTOM_LIB)
}
.libPaths(c(.CUSTOM_LIB, .libPaths()))
message("Using library: ", .libPaths()[1])
if(dirname(tempdir()) != .TMP){
if(!dir.exists(.TMP)) dir.create(.TMP)
cat(paste0("TMPDIR = ", .TMP), file="~/.Renviron", sep = "\n")
}
message("Using temp directory: ", .TMP)
#---------------------------------------------------
# pacman is optional, you can delete following code
# If you wanna use pacman, please read:
# <https://www.jianshu.com/p/cb16ded75672>
# Basically,
# #1, you can use 'p_load' to load multiple package into R
# like p_load(data.table, dplyr)
# #2, you can use 'p_get' just to install package
# #3, you can use 'p_update' to update all packages
#---------------------------------------------------
if(!require(pacman)){
install.packages("pacman", dependencies = TRUE)
}
library(pacman)
#----------------------------------------------------
如下图:
你主要对下面的目录进行修改即可
.CUSTOM_LIB = "C:/Tools/R/R_Library" # set your custom library location
.TMP = "C:/Tools/R/Rtmp" # set a temp dir for R running
# please do not add '/' at the end !!!
pacman那段代码是可选的,该包是library()
函数的替代品,使用更简单。具体点击阅读我之前的文章。
为了方便大家使用,我添加了一些必要注释,如果有问题可以评论或者email我。
保存后重启RStudio或者点击菜单栏Session
下的Restart R
。
每次都会输出你包的存储路径和R的临时路径。方便你自己查询。
这样以后升级R,只要重装下R版本就可以了,R包还在那里,最多再在控制台来一句更新包操作:
p_update()