使用jupyter notebook搭建数据科学最佳交互式环境

简介:

小编近来在猛攻Python,毕竟江湖人传“人生苦短,我用Python”。当然了,自然也不是为了跟风,从去年开始小编的Python水平就一直处于从入门到放弃状态,而今为了提升核心竞争力,必然要下功夫学习一番。作为当下数据科学最热的两门编程语言,R和Python一直都是圈内焦点。小编今天要谈的是如何使用jupyter notebook这款神器来搭建最佳的数据科学交互式环境,以及jupyternotebook的一些使用的简单教程。

熟悉Python的朋友都知道,除了官方版本的CPython解释器,IPython是一款基于CPython的交互式解释器,而jupyter notebook就是以IPython为内核的一款交互式笔记本,可以全程从用户的角度展现分析逻辑和思维。随着jupyternotebook项目的不断发展壮大,其本身也不再仅局限于Python这一种编程语言了,Jupyter 的名字就很好地诠释了这一发展过程,它是 Julia、Python 以及R语言的组合,拼写相近于木星(Jupiter),而且现在支持的语言也远超这三种了。当然,我们从数据科学的角度出发,将jupyter notebook搭建成包括Python和R这两种数据科学语言的交互式环境就足够了。

jupyter的安装非常容易,可以直接在cmd中使用pip工具安装:

 

pip install jupyter notebook

当然如果你是使用anaconda套件来安装Python的,系统就直接内置了jupyter,然后在cmd中直接键入jupyter notebook即可启动jupyter的交互式环境。如果想在指定文件下创建 .ipynb文件,也可直接在cmd中定位到该文件夹下启动jupyter。启动成功后浏览器会自动跳转到jupyter notebook工作界面:

e4faee7e1be0324483f920bf1e3ce27676abde20

然后在界面右上角New菜单栏下即可根据需要创建新的notebook:

4d18c690c9a81e012e800ab90117ca5b530ef27c

小编这里选的是Python3,所以交互式界面打开就可以看到满满的基于IPython的工作环境:

a08c685245df14a8c3a79804d772ebd7af451a05

接下来就可以在这个本子上愉快的写代码啦。

689da5a5854b1b85adb19f0189184d7ff611c3e0

像这样子每一个长方形小框框我们称之为cell,独立的一块一块存在,每一个cell需要单独运行,除了可以单击上面一排的按键之外,jupyter notebook为我们提供了大量的快捷键,比如说运行的快捷键为Shift+Enter。

除了cell单元用来编写代码之外,jupyter还提供了可用于文本编辑的markdown单元,在菜单栏点击下拉即可找到,基于markdown的文本编排操作方法cell单元一致:

0cec12c6c3c3e865ba831b03747cc4eee0d0fa34

另外,需要提及的一点是,jupyter的编辑界面包括编辑模式和命令模式两种。编辑模式就是在cell或者markdown单元下编辑文本和代码,定位到具体的单元,Enter即可进入编辑模式,编辑模式下单元左侧会呈现出绿色竖线。而命令模式则用于执行刚刚上面提到的键盘输入的快捷命令,使用Esc键进入命令模式,此时单元左侧呈现蓝色竖线。

dc9288632b99479b4b5265c94b20c803514add8c

本文在这里列出命令模式和编辑模式下jupyter所支持的一些常用的快捷命令:

命令模式:

快捷键

操作含义

快捷键

操作含义

Enter

进入编辑模式

Shift+V

粘贴到上方单元

Shift+Enter

运行本单元并选中下个单元

V

粘贴到下方单元

Ctrl+Enter

运行本单元

Z

删除恢复的最后一个单元

Alt+Enter

运行本单元并在其下方插入新单元

双击D

删除选中的单元

Y

单元转入代码状态

Shift+M

合并选中的单元

M

转入markdown状态

Ctrl+S/S

保存文档

R

转入raw状态

L

转换行号

1-6

设定1-6级标题

O

转换输出

K

选中上方单元

Esc/Q

关闭页面

J

选中下方单元

H

显示快捷键帮助

A

在上方插入新单元

双击I

中断内核连接

B

在下方插入新单元

双击O

重启内核连接

X

剪切选中的单元

Shift

忽略

C

复制选中的单元

Space

向下滚动

编辑模式:

快捷键

操作含义

快捷键

操作含义

Tab

补全代码或缩进

Shift+Tab

提示

Ctrl+]

缩进

Ctrl+[

解除缩进

Ctrl+A

全选

Ctrl+Z

还原

Ctrl+Y

重做

Ctrl+Home

跳到单元开头

Ctrl+Up

跳到单元开头

Ctrl+End

跳到单元末尾

(编辑模式其余快捷命令与命令模式下相同)

上面的例子小编全部都是从Python来看的,前面也提到了,jupyter notebook发展到如今,已经可以支持数十种编程语言了,那我们想要让我们的jupyter里面包含R的Kernel也并不是什么难事,下面就简单介绍下如何让你的R代码在jupyter里面跑起来。

jupyter notebook目前可支持的全部编程语言可见:

https://github.com/jupyter/jupyter/wiki/Jupyter-kernels

3f70a64781d7331fd0825662b30e7b04617d663d

要想在jupyter notebook中运行R语言其实非常简单,按顺序安装下面扩展包即可:

 

install.package('repr','IRdisplay','evaluate','crayon','pbdZMQ','devtools','uuid','digest')
library(devtools)
install_github("IRkernel/IRkernel")

IRkernel::installspec()

在R中执行上述四行代码,重新打开你的jupyternotebook即可看到对于R的支持标志:

5fc3ddba42dfb765ff9432e1f9eed8f3d71b3975

简单测试几行R代码,比如说小编这里使用科比的职业生涯投篮数据绘制出科比的投篮方式选择的可视化图。

e7aa0c4a2cdc1ff009082ab1925b53934530e495

这样,基于jupyter notebook的R和Python的数据科学工作环境就搭建好啦。大家也来试一试吧!


原文发布时间为:2018-11-6

本文作者:louwill

本文来自云栖社区合作伙伴“Python爱好者社区”,了解相关信息可以关注“Python爱好者社区”。

相关文章
|
6月前
|
SQL 机器学习/深度学习 数据挖掘
云端数据科学平台Deepnote,相当于云上的Jupyter Note
云端数据科学平台Deepnote,相当于云上的Jupyter Note
208 0
|
1月前
|
Ubuntu
Ubuntu学习笔记(七):ubuntu下jupyter指定虚拟环境
本文介绍了如何在Ubuntu系统下使用Anaconda和Jupyter Notebook指定并切换不同的虚拟环境。
79 0
Ubuntu学习笔记(七):ubuntu下jupyter指定虚拟环境
|
3月前
|
JavaScript 数据挖掘 Python
conda+jupyter玩转数据科学环境搭建
conda+jupyter玩转数据科学环境搭建
|
3月前
|
机器学习/深度学习 数据可视化 数据挖掘
Jupyter Notebook: 数据科学的最佳实践
【8月更文第29天】Jupyter Notebook 是一个交互式的计算环境,非常适合进行数据分析、可视化和机器学习任务。它不仅支持多种编程语言(如 Python、R 和 Julia),还能将文本、代码、图表和多媒体元素融合在一起,非常适合编写可重复使用的分析报告。
249 1
|
3月前
|
并行计算 数据可视化 数据处理
面向未来的数据科学工具链:Dask与Jupyter生态系统的融合
【8月更文第29天】随着数据量的不断增长,传统的数据处理方法已经难以满足科研和商业的需求。Dask 是一个并行计算库,能够有效地处理大规模数据集,同时它与 Jupyter Notebook 和其他数据科学工具的无缝集成,使得数据科学家能够构建更加高效的工作流程。本文将探讨如何利用 Dask 与 Jupyter 生态系统构建现代化的数据科学工作流,并通过具体的代码示例展示其实现过程。
41 1
|
3月前
|
机器学习/深度学习 Ubuntu Linux
【机器学习 Azure Machine Learning】使用Aure虚拟机搭建Jupyter notebook环境,为Machine Learning做准备(Ubuntu 18.04,Linux)
【机器学习 Azure Machine Learning】使用Aure虚拟机搭建Jupyter notebook环境,为Machine Learning做准备(Ubuntu 18.04,Linux)
|
3月前
|
网络安全 数据安全/隐私保护 iOS开发
【Mac os】如何在服务器上启动Jupyter notebook并在本地浏览器Web端环境编辑程序
本文介绍了如何在服务器上启动Jupyter Notebook并通过SSH隧道在本地浏览器中访问和编辑程序的详细步骤,包括服务器端Jupyter的启动命令、本地终端的SSH隧道建立方法以及在浏览器中访问Jupyter Notebook的流程。
138 0
|
4月前
|
数据采集 机器学习/深度学习 数据可视化
Jupyter Notebooks和IPython是交互式数据分析利器,提升效率。Jupyter是开源Web应用
【7月更文挑战第5天】Jupyter Notebooks和IPython是交互式数据分析利器,提升效率。Jupyter是开源Web应用,支持多语言,结合IPython的交互式解释器,便于编程和科学计算。两者提供即时反馈、丰富库支持、跨语言功能及协作共享。基本流程包括:数据导入(使用Pandas)、预处理、分析(借助Pandas、NumPy、Matplotlib)、模型训练(如随机森林)和评估。
44 0
|
6月前
|
机器学习/深度学习 数据可视化 数据挖掘
Jupyter Notebook交互式开源笔记本工具
Jupyter Notebook交互式开源笔记本工具
106 1
|
6月前
|
IDE 数据可视化 数据挖掘
Jupyter Notebook使用教程——从Anaconda环境构建到Markdown、LaTex语法介绍
Jupyter Notebook使用教程——从Anaconda环境构建到Markdown、LaTex语法介绍
1744 2