Jupyter Notebook的三大短板,都被这个新工具补齐了

简介:

在机器学习和数据科学领域,Jupyter已经家喻户晓。它把笔记、代码、图表、注释融合在一个交互式的笔记本里,还能添加各种扩展功能。可谓机器学习入门进阶研究之神器。

11ff1b472185eceb6001ea6992a3b64b1faf5086

可是,神器也有短板

● 文件是固定的JSON格式,体积还非常大;
● 要在浏览器里编辑文档好烦,好怀念自己喜欢的编辑器;
● 版本控制好艰难,想用标准的合并工具来协作,可是人家只支持文本!

最近推出的一个工具,帮Jupyter Notebook把这些短板补齐了。

这个工具叫Jupytext,顾名思义,能够把Jupyter Notebook的内容转化成纯文本,用你最顺手的IDE打开。

c1f85a504c992fe985580af62ca16976be331d7e

于是,编辑协作版本控制等一系列问题,迎刃而解。

Jupytext现在支持的语言还不能覆盖Jupyter Notebook的全部,但搞定了最流行的几种。它支持Jupyter Notebook和下面这些格式之间的相互转换:

Julia脚本(.jl)、Python脚本(.py)、R脚本(.R)、Markdown文件(.md)、R Markdown文件(.Rmd)。

Jupytext作者Marc Wouts在一篇博客里展示了怎样借助这个工具在IDE或者编辑器里来编辑Jupyter Notebook、进行版本控制。

b10f1c884c64ba9cd04428246332656d1de7a645

上面就是Jupytext使用过程的一个例子:把一个Jupyter Notebook存储为.ipynb和.py两种文件格式、用PyCharm打开.py脚本来修改代码、保存之后刷新浏览器,就能在Jupyter Notebook里看到新结果了。

想要在一大堆代码和笔记里查找内容、编辑、执行cell、debug……用IDE比用Jupyter Notebook要方便得多。

84d48038517ad6906bd389e96dc55b50dd9668f5

上图则是对文本执行版本检查,然后将有意义的差异合并的过程。

看起来不错,怎么安装呢?

这个工具支持pypi.安装,代码是这样的:


upytext from pip
pip install jupytext --upgrade
# Append this to .jupyter/jupyter_notebook_config.py c.NotebookApp.contents_manager_class="jupytext.TextFileContentsManager"
# And restart your notebook server
jupyter notebook

在Jupyter Notebook的元数据里输入jupytext_formats,就能激活笔记本和文本文件的配对,实现在IDE里编辑脚本,Notebook里也跟着更新的效果。

如果想在编辑文本文件的时候还开着Jupyter,可以在一个单元格里运行%autosave 0,关掉Jupyter的自动保存功能。

dd6243e2f0b238905de3d7aa459b0bc3769608ce

原文发布时间为:2018-09-11本文作者:凹非寺本文来自云栖社区合作伙伴“ 量子位”,了解相关信息可以关注“ 量子位”。
相关文章
|
17天前
|
机器学习/深度学习 数据可视化 数据挖掘
Jupyter Notebook交互式开源笔记本工具
Jupyter Notebook交互式开源笔记本工具
|
1月前
|
IDE 数据可视化 数据挖掘
Jupyter Notebook使用教程——从Anaconda环境构建到Markdown、LaTex语法介绍
Jupyter Notebook使用教程——从Anaconda环境构建到Markdown、LaTex语法介绍
62 2
|
2月前
|
数据可视化 安全 数据挖掘
技术小白如何轻松安装Jupyter Notebook
技术小白如何轻松安装Jupyter Notebook
|
3月前
|
JSON 数据可视化 数据格式
Python小姿势 - Python使用Jupyter Notebook
Python小姿势 - Python使用Jupyter Notebook
|
3月前
|
数据可视化 Python
Python 的科学计算和数据分析: 解释什么是 Jupyter Notebook?
Python 的科学计算和数据分析: 解释什么是 Jupyter Notebook?
|
3月前
|
机器学习/深度学习 人工智能 数据可视化
Jupyter Notebook的10个常用扩展介绍
Jupyter Notebook(前身为IPython Notebook)是一种开源的交互式计算和数据可视化的工具,广泛用于数据科学、机器学习、科学研究和教育等领域。它提供了一个基于Web的界面,允许用户创建和共享文档,这些文档包含实时代码、方程、可视化和文本。
99 6
|
4月前
|
机器学习/深度学习 大数据 程序员
[机器学习]Jupyter Notebook 安装使用(二)
[机器学习]Jupyter Notebook 安装使用(二)
44 0
|
4月前
|
机器学习/深度学习 人工智能 数据挖掘
【Python数据挖掘】数据挖掘简介及Jupyter notebook操作介绍(图文解释 超详细)
【Python数据挖掘】数据挖掘简介及Jupyter notebook操作介绍(图文解释 超详细)
73 0
|
4月前
|
机器学习/深度学习 安全 数据安全/隐私保护
Jupyter Notebook本地部署并实现公网远程访问内网Jupyter服务器【内网穿透】
Jupyter Notebook本地部署并实现公网远程访问内网Jupyter服务器【内网穿透】
|
8月前
墙裂推荐!几个Jupyter Notebook 超实用插件(二)
墙裂推荐!几个Jupyter Notebook 超实用插件(二)