使用 conda 和 Jupyter 在 R 中实现数据科学分析

前两篇文章我们介绍了 Jupyter Notebook 的一些基础用法,今天我们来介绍一下如何使用 conda 和 Jupyter 在 R 中开始一个数据科学项目。


在开始之前我们先要明确一个概念:Kernel,即内核。内核是以特定的编程语言运行交互式代码并将输出返回给用户的进程,基于 Kernel,Jupyter Notebook 可以支持包括 R、Python 在内的多种编程语言。由于 Jupyter Notebook 和 Kernel 是分开的,任何语言的代码都可以在它们之间发送。使用 R 内核,用 R 编写的代码将被发送到执行的 R 内核,与在 Python 内核上运行 Python 的代码道理是一样的。



创建 “R Essentials” 


Anaconda 团队已经创建了一个 “R Essentials”把 IRKernel 和数据科学分析中最常用的超过 80 个 R 包捆绑在了一起,这些包包括:dplyr, shiny, ggplot2, tidyr, caret 和 nnet


“R Essentials” 的下载需要用到 conda。幸运的是,Miniconda 已经包含了 conda、Python 以及其他的一些必须包,而 Anaconda 则包含了 miniconda 的所有东西,以及用于科学,数学,工程和数据分析的 200多个最受欢迎的 Python 软件包。用户可以选择安装 Anaconda 一次安装所有的包;也可以先安装 Miniconda ,然后再使用 conda 命令安装他们需要的包(包括在 Anaconda 中的任何包)。


如果你已经拥有了 conda,你可以为当前环境安装 "R Essentials":

conda install -c r r-essentials


或者创建一个专门用于 “R essentials” 的新环境:

conda create -n my-r-env -c r r-essentials



Jupyter


Jupyter 提供了一个强大的笔记本交互界面来写你的分析,并与同行分享。打开一个 shell 并运行下面这个命令来启动浏览器中的 Jupyter 笔记本界面:

jupyter notebook


创建一个新的 R 笔记:

2dc04b6a-4b97-4b76-ab65-545294ee8f16.png

接下来,你就可以在 notebook cells 中编写和运行你的 R 代码了。



R 笔记示例


① 导入数据整理 R 包,dplyr:

In [1]: library(dplyr)


② 调用一个可用的数据集,如 iris:

In [2]: iris
Out[2]:
    Sepal.Length    Sepal.Width     Petal.Length    Petal.Width     Species
1            5.1            3.5              1.4            0.2      setosa
2            4.9              3              1.4            0.2      setosa
...


③ 计算物种的平均萼片宽度

In [3]: iris %>%
 group_by(Species) %>%
 summarise(Sepal.Width.Avg = mean(Sepal.Width)) %>%
 arrange(Sepal.Width.Avg)
 
Out [3]:
        Species     Sepal.Width.Avg
1    versicolor                2.77
2     virginica               2.974
3        setosa               3.428


④ 导入可视化 R 包 ggplot2:

In [4]: library(ggplot2)


⑤ 绘图 Sepal.Width vs. Sepal.Length:

In [5]: ggplot(data=iris, aes(x=Sepal.Length, y=Sepal.Width, color=Species)) + geom_point(size=3)

255bd689-bab5-4d8c-8582-e167621cfd9f.png

ok,今天就到这里。下一篇我们将会介绍如何使用 conda 创建我们的自定义的 R 集合包并上传与他人共享,以及介绍一下如何通过 Jupyter 把笔记转换为在线幻灯片,供讲座和教程使用。




本文分享自微信公众号 - 生信科技爱好者(bioitee)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Jupyter 和 nb_conda 都是用于数据分析和科学计算的工具,但是它们之间有一些区别: 1. Jupyter 是一个开源的Web应用程序,可以用于创建和共享文档,其包含Live代码,公式,可视化内容和解释文字。而 nb_conda 是一个 Jupyter 的扩展,主要用于管理 Jupyter使用的环境和包。 2. Jupyter 可以使用多种编程语言,例如 Python,R,Julia 等。而 nb_conda 则是 Jupyter 的一个内核,专门针对 Anaconda 发行版(一个用于数据科学的开源发行版)进行了优化。 总的来说,nb_condaJupyter 的一个扩展,专门针对 Anaconda 发行版进行了优化,因此如果你使用 Anaconda 发行版并且想要在 Jupyter 管理环境和包,那么使用 nb_conda 是一个不错的选择。 ### 回答2: Jupyter和nb_conda是两个常用的Python开发工具。它们都可以在浏览器运行,并提供了一个交互式的环境来编写和运行代码。 Jupyter是一个基于Web的开发环境,可以让用户在浏览器编写和运行代码。它支持多种编程语言,包括Python、R、Julia等。用户可以将代码和文本组合在一起,创建可交互的笔记本,并与他人共享。 nb_conda是一个Jupyter扩展包,用于与conda包管理器集成。conda是一个环境和包管理工具,可以帮助用户创建和管理多个独立的Python环境,并安装不同版本的软件包。通过nb_conda,用户可以在Jupyter方便地创建和切换不同的conda环境,以便在不同的项目使用不同的软件包版本。 因此,Jupyter和nb_conda的区别在于它们的功能和用途。Jupyter是一个通用的开发环境,适用于各种编程语言和项目。它提供了丰富的交互式功能和数据可视化工具,非常适合数据科学、机器学习和科学计算等领域。而nb_conda是一个Jupyter的扩展包,用于与conda包管理器集成,方便用户在Jupyter管理不同版本的软件包和创建不同的环境。 ### 回答3: Jupyter和nb_conda是两个在Python开发常用的工具。它们之间的区别如下: 1. 功能:Jupyter是一个交互式的笔记本环境,可以在其编写和运行代码,以及创建文档和可视化内容。它支持多种编程语言,并提供了丰富的工具和扩展库。而nb_conda是一个Jupyter的插件,用于管理和安装Conda环境。它允许用户在Jupyter直接创建和切换不同的Conda环境。 2. 安装和配置:Jupyter通常是通过pip安装的,而nb_conda可以通过Conda命令来安装。安装Jupyter后,默认情况下不会包含nb_conda插件,需要单独安装和配置才能使用nb_conda。 3. 环境管理:Jupyter本身并不提供环境管理的功能,它主要用于代码的编写和展示。而nb_conda则是专门为Conda环境设计的插件,可以直接在Jupyter创建和管理Conda环境,方便用户在不同的环境进行开发和测试。 4. 扩展性:Jupyter具有丰富的扩展库和插件生态系统,可以通过安装各种扩展来增强其功能。而nb_conda只是Jupyter的一个插件,提供了Conda环境管理的功能,不具备扩展性。 总的来说,Jupyter是一个交互式的笔记本环境,用于编写和展示代码,而nb_condaJupyter的一个插件,用于管理和切换Conda环境。通过nb_conda,用户可以方便地在Jupyter创建和管理不同的Conda环境,以满足不同项目的需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值