Shixiang Wang

>上士闻道
勤而行之

R的安装与配置

王诗翔 · 2018-08-10

分类: r  
标签: r   installation  

Windows R安装好后配置是本文的重点。关于Windows R的安装,百度有一大堆的教程。其中重点有3:

  1. 安装R,下载https://mirrors.tuna.tsinghua.edu.cn/CRAN/bin/windows/base/R-3.5.1-win.exe
  2. 安装RStudio,下载https://download1.rstudio.org/RStudio-1.1.456.exe
  3. (可选)安装Rtools,这个是用来编译源码包的,一般是含有其他语言写的包需要该步骤,下载https://mirrors.tuna.tsinghua.edu.cn/CRAN/bin/windows/Rtools/Rtools35.exe

上述所有链接都是2018-08-10的最新版本。

根据我这一年多反复安装R,遇到错误不得不重装R的一些经历,在安装时有以下几个重要的建议:

  1. 尽量不要安装在Program files相关目录下,考虑到现在大多数电脑都是一个C盘,可以选择在C盘下创建一个目录专门用来装R、R包以及R tools。下面展示的就是我选择了C:/Tools作为本文软件安装的目录。大家根据自己电脑合理选择,有其他盘的朋友可以装到其他盘。带固态硬盘的最好装到固态硬盘目录里,因为读写数据快。
  2. 一般现在电脑是64位的,如果你确定是这样,在安装时有关于32位的选项都可以不勾选。
  3. 涉及到添加环境变量/路径之类的,勾选添加即可。
  4. 以上没提到的,一路点下一步。

注意,R和RStudio可以单独安装,但RStudio只有在R安装好了以后才能正常使用。

配置

Windows R默认使用用户文档目录作为家目录(等同于Linux中的~),使用系统指定的临时目录作为临时目录,使用安装路径下的R版本/library目录作为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)
#----------------------------------------------------

如下图:

Rstudio<U+622A><U+56FE>

Figure 1: Rstudio<U+622A><U+56FE>

你主要对下面的目录进行修改即可

.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

Restart R

Figure 2: Restart R

每次都会输出你包的存储路径和R的临时路径。方便你自己查询。

这样以后升级R,只要重装下R版本就可以了,R包还在那里,最多再在控制台来一句更新包操作:

p_update()