Anaconda Jupyter中配置R运行环境
引言
当学习一个R语言的程序包时,希望记录下来函数的功能,和示例代码运行数据,Jupyter notebook在此时可以发挥作用,它可以方便地展示学习记录、以及代码、以及代码的运行结果。
我电脑上已经安装了Anaconda(是为了使用spyder所以安装的Anaconda),然后第一次安装好Anaconda之后,打开Anaconda 的图形化navigator之后,就默认创建了一个环境(env),并且命名为root。
然后在打开Anaconda 的图形化navigator界面中,有Jupyter notebook的图标,所以我即点击Launch运行,却发现此时Jupyter notebook只支持python3 和Julia两种编程语言。所以如果想在Jupyter notebook中使用R语言,则需要进行一番配置。
配置过程
如何在Jupyter notebook中配置可以使用R语言的环境,搜索发现,以下两个网页信息十分有用:
第一个是图形化的配置操作方法,第二个是使用conda命令行的操作方法。
理解操作步骤的原理就是,要在Anaconda默认创建好的root 环境之外,另外创建一个环境,可以命名为r_tutorial(第一个网页介绍的创建名称),或者r_env(第二个网页介绍的创建名称)。然后再激活这个环境即可。最后用Jupyter notebook打开这个env就可以在Jupyter notebook中使用R语言了。
总结实践测试后的配置方法
这里记录主要使用Anaconda prompt 命令行的操作方法:
- windows控制面板,卸载独立于Anaconda之外安装的python 和python的IDLE。
- Anaconda prompt 命令行输入
conda config --set show_channel_urls yes
, 然后打开路径文件C:Userssamsung.condarc,编辑文本以粘贴入下文中来自清华镜像站的使用配置代码(见困难2段落)。即配置好了Anaconda使用清华的镜像,以确保后续配置环境过程中下载速度有保障。 - 运行
conda clean -i
清除索引缓存,保证用的是清华镜像站提供的索引。 - 运行
conda create -n r_env r-essentials r-base
,即创建名为r_env的environment,对提示的下载输入y。下载后,即也完成了安装。 - 运行
conda activate r_env
, 以激活环境。 - 运行
conda list
查看一下新创建的r_env环境中已经安装的package,应该包含很多熟悉的R语言package,并且都是以 r-开头的。 - 运行
conda activate r_env
,激活r_env环境。 - 运行
jupyter notebook
,即打开Jupyter notebook的浏览器,新建中选择R即可以开始用R语言进行Jupyter notebook笔记写作了。
以后再需要使用jupyter notebook 创作R语言的笔记时,直接打开anaconda Powershell prompt (Anaconda) 然后执行上述步骤的8 和9 即可。然后在浏览器打开的页面中,新建处选择R。
记录实践的过程
我是按照第二个介绍的conda命令行的操作方法进行实践的,首先打开Anaconda Prompt命令行终端,然后输入 conda create -n r_env r-essentials r-base
,即开始运行。
困难点1
开始运行不久,就弹出一个窗口报错,提示是python程序出错。但是命令行中又没有报错,这时再运行激活环境的代码时 conda activate r_env
,发现又报错,提示没有该环境。这说明环境创建失败。所以我怀疑是独立于Anaconda之外在电脑上安装的python 程序造成了这个报错,所以我卸载了电脑上安装的python 以及python IDLE。之后重新运行create r_env的代码,发现就不报错了。开始提示要安装一些package,就是下载r-essentials r-base 还有environment所必需的一些文件,输入y 之后,即开始下载。
困难点2
开始下载之后就发现,下载进度特别慢,以至于最后提示下载失败。这应该是因为Anaconda的服务器位于国外,所以数据传输很慢导致下载失败。此时想到国内应该有Anaconda的镜像,搜索即发现清华镜像站中即有Anaconda的镜像资源(Anaconda 镜像使用帮助),并且提供了很好的镜像配置使用说明,如下:
TUNA 还提供了 Anaconda 仓库与第三方源(conda-forge、msys2、pytorch等,查看完整列表)的镜像,各系统都可以通过修改用户目录下的 .condarc 文件。Windows 用户无法直接创建名为 .condarc 的文件,可先执行 conda config --set show_channel_urls yes 生成该文件之后再修改。
channels:
- defaults
show_channel_urls: true
channel_alias: https://mirrors.tuna.tsinghua.edu.cn/anaconda
default_channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
即可添加 Anaconda Python 免费仓库。
运行 conda clean -i
清除索引缓存,保证用的是镜像站提供的索引。
运行 conda create -n myenv numpy
测试一下吧。
所以基于上述清华Anaconda镜像站使用说明信息,我首先在Anaconda 命令行中运行,conda config --set show_channel_urls yes
,生成了用户目录下的 .condarc 文件(创建之后在我电脑上的完整路径是 C:Userssamsung.condarc)。然后打开该文件粘贴上如上配置内容。即设置好了下载镜像。
然后再按照提示,运行 conda clean -i
清除索引缓存。
此时,应该开始创建environment了。所以我重新再运行,conda create -n r_env r-essentials r-base
,然后提示安装package时输入y,就开始下载了。这是就看到速度很可以了,几分钟左右即下载完成,并且命令行中提示运行激活环境的代码激活环境。所以运行激活环境代码, conda activate r_env
。然后再运行一下, conda list
查看新创建的r_env环境中已经安装的package,可以看到R语言相关的package都是有 r- 开头的,同时还有其他package,包括python3.8。
再打开Anaconda 的navigator,可以在environment中看到root下面多了一个 r_env 的环境。这时,可以使用图形化的方式或命令行的方式打开r_env 的notebook。图形化方式就是,在r_env上右键,选择open with Jupyter Notebook。我这里使用命令行的方式,就是在Anaconda中输入 conda activate r_env
,然后再运行 jupyter notebook
,就发现打开了Jupyter notebook的浏览器,在页面右上角的新建处就可以选择R了。新建R之后就可以愉快地开始使用了。