Jupyter Notebook的三大短板,都被這個新工具補齊了

2020-12-15 量子位

夏乙 發自 凹非寺量子位 出品 | 公眾號 QbitAI

在機器學習和數據科學領域,Jupyter已經家喻戶曉。它把筆記、代碼、圖表、注釋融合在一個交互式的筆記本裡,還能添加各種擴展功能。可謂機器學習入門進階研究之神器。

可是,神器也有短板

文件是固定的JSON格式,體積還非常大;要在瀏覽器裡編輯文檔好煩,好懷念自己喜歡的編輯器;版本控制好艱難,想用標準的合併工具來協作,可是人家只支持文本!

最近推出的一個工具,幫Jupyter Notebook把這些短板補齊了。

這個工具叫Jupytext,顧名思義,能夠把Jupyter Notebook的內容轉化成純文本,用你最順手的IDE打開。

於是,編輯協作版本控制等一系列問題,迎刃而解。

Jupytext現在支持的語言還不能覆蓋Jupyter Notebook的全部,但搞定了最流行的幾種。它支持Jupyter Notebook和下面這些格式之間的相互轉換:

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

Jupytext作者Marc Wouts在一篇博客裡展示了怎樣藉助這個工具在IDE或者編輯器裡來編輯Jupyter Notebook、進行版本控制。

上面就是Jupytext使用過程的一個例子:把一個Jupyter Notebook存儲為.ipynb和.py兩種文件格式、用PyCharm打開.py腳本來修改代碼、保存之後刷新瀏覽器,就能在Jupyter Notebook裡看到新結果了。

想要在一大堆代碼和筆記裡查找內容、編輯、執行cell、debug……用IDE比用Jupyter Notebook要方便得多。

上圖則是對文本執行版本檢查,然後將有意義的差異合併的過程。

看起來不錯,怎麼安裝呢?

這個工具支持pypi.安裝,代碼是這樣的:

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

在Jupyter Notebook的元數據裡輸入jupytext_formats,就能激活筆記本和文本文件的配對,實現在IDE裡編輯腳本,Notebook裡也跟著更新的效果。

如果想在編輯文本文件的時候還開著Jupyter,可以在一個單元格裡運行%autosave 0,關掉Jupyter的自動保存功能。

最後,附上Jupytext的傳送門:

https://github.com/mwouts/jupytext

相關焦點

  • 樹莓派打造python在線編程工具Jupyter Notebook
    樹莓派可以安裝很多好玩的應用,這些引用都可以使用docker安裝,之前介紹過docker,如果用樹莓派做伺服器,一定要安裝docker,超級方便。樹莓派安裝docker以及簡單使用這次介紹一個python在線ide工具jupyter Notebook,也是用docker安裝的。
  • 上手jupyter notebook神器
    安裝完成後,直接在終端執行 jupyter notebook 或 jupyter lab 命令啟動。這個配置文件一開始並不存在,需要手動生成,在命令行輸入 jupyter notebook --generate-config 並執行,配置文件就創建好了,它的位置是在 C:\Users\Administrator.jupyter\ 中。
  • Jupyter Notebook 使用小技巧
    Jupyter Notebook 是一種基於網絡的交互式工具,它是機器學習和數據科學經常使用的工具。它可以被用於快速測試,作為報告工具,甚至作為複雜的學習材料在在線課程中使用。數據科學愛好者 Shadab Hussain 分享了 Jupyter Notebook 使用的一些小技巧。
  • jupyter notebook在線平臺和教程
    jupyter logo很多同學都在了解學習python過程中,都聽過jupyter和jupyter notebook的大名,但默認的python安裝是不包含jupyter的,因此很多人還不了解jupyter是幹什麼用的
  • 大神教小白搭建Jupyter Notebook環境
    )和 R 三種科學運算語言的計算工具平臺,所以將其命名為 Ju-Py-te-R。pip install jupyter你也可以下載anaconda3、 conda常見命令conda不僅可以方便安裝,更新,卸載工具包,而且安裝時能自動安裝相應的依賴包。
  • Jupyter Notebook介紹、安裝及配置教程
    網頁應用網頁應用即基於網頁形式的、結合了編寫說明文檔、數學公式、交互計算和其他富媒體形式的工具。2.文檔即Jupyter Notebook中所有交互計算、編寫說明文檔、數學公式、圖片以及其他富媒體形式的輸入和輸出,都是以文檔的形式體現的。
  • 一款容易上手jupyter notebook神器
    安裝完成後,直接在終端執行 jupyter notebook 或 jupyter lab 命令啟動。這個配置文件一開始並不存在,需要手動生成,在命令行輸入 jupyter notebook --generate-config 並執行,配置文件就創建好了,它的位置是在 C:\Users\Administrator.jupyter\ 中。
  • Python安裝Jupyter Notebook配置使用教程
    為什麼要用Jupyter Notebook推薦新手寫python用什麼編輯器就有有人問:為什麼沒有Jupyter Notebook。本來想數據分析和可視化的時候才介紹的,所以沒有加上。最近要截圖比較多,用Jupyter Notebook可以很好看到代碼和結果。
  • 為jupyter notebook添加目錄(Jupyter安裝拓展nbextensions)
    jupyter notebook吧,現在的我算是半個jupyter notebook的愛好者吧,主要是它可以與markdown結合,將前言信息、分析用的code、圖表、展現的結論等信息都可以即時記錄,不用多個文檔間切換記錄。
  • Jupyter NoteBook 安裝以及常用配置
    ,設置了Python3的別名為python3使用以下命令,對於大多數內置了Py2和Py3的Linux來說 ,也是這個命令。第一次啟動在Anaconda環境中啟動在Windows+Anaconda 環境中會出現這兩個圖標,如果沒有修改過任何配置的話,它們的啟動後的工作目錄應該都是 文檔目錄,即當前用戶的文檔目錄。點這兩個都可以啟動,啟動後會出現如下的彈窗。Windows和Linux差不多,只是部分顯示信息不同。我這個因為一些設置,將當前用戶根目錄設置為工作目錄了。
  • jupyter notebook 一個編程交互式的記事本
    好奇計算機語言,近期想學一些東西,想要留下一些記錄什麼的供自己以後翻閱,想想還是將每日所操作的記錄下來:在利用python進行大數據分析一書中看到了jupyter這個工具,就照著做了,感覺還可以可以代替繼承的開發環境,對於感興趣的來說新奇有夠用
  • 快速入門 Jupyter notebook
    Jupyter notebook 是一個很強大的交互式和展示數據科學項目的工具,它可以作為一個開發文檔,包含代碼、解釋說明文字、代碼運行結果、數學公式等等,功能非常強大,也是現在非常流行的工具。注意,這裡僅僅展示 Jupyter 運行時候的所在文件夾內的文件和文件夾,也就是在命令行運行 jupyter notebook 時所在的文件夾,當然這個也可以改變,運行命令的時候可以指定文件夾位置,即輸入:jupyter notebook filepath此外,這裡在瀏覽器上的 URL 地址是類似 http://localhost:8888/
  • 15個應該掌握的Jupyter Notebook 使用技巧
    計算單元的執行時間我們可以在一個jupyter notebook單元的開頭使用%%time命令來計算執行該單元的時間。2. 進度條可以使用python外部庫創建進度條,它可以實時更新代碼運行的進度。它讓用戶知道正在運行的代碼腳本的狀態。你可以在這裡獲得相關的庫Github庫。
  • 9大Jupyter Notebook擴展工具,工作效率大大提升
    分鐘圖源:unsplashJupyter Notebook可能是數據科學家們最愛使用的工具了啟用擴展為了啟用擴展,我們需要運行pip命令來安裝該功能:pip install jupyter_contrib_nbextensionspip install jupyter_nbextensions_configurator
  • Jupyter Notebook 的 28 個技巧(下)
    這個:$P(A \mid B) = \frac{P(B \mid A)P(A)}{P(B)}$將會變成這個:jupyter-notebook-latexMarkdown 在 notebook 中是很重要的一部分內容,所以不要忘記去使用它豐富的表現能力。19.
  • Python學習|Anaconda、Jupyter Notebook、pycharm安裝使用詳解
    就 python 學習而言,Anaconda 是 python 全家桶,安裝了 Anaconda,你就擁有了原生 python+常用 python 包+包管理工具+各種 python 編輯器,再也不用為包管理、安裝編輯器而煩惱。因此,現在基本都是使用 Anaconda 了,很少使用原生的 python IDLE。
  • 我知道你會用Jupyter Notebook,但這些插件你都會了嗎?
    幸好,有許多方法可以改進這個不錯的工具,如 Jupyter Notebook 擴展工具。極簡版教程在命令提示符中運行以下命令:pip install jupyter_contrib_nbextensions && jupyter contrib nbextension install啟動 Jupyter Notebook,並導航至新的 Nbextensions 選項卡:
  • Jupyterlab:超強的下一代Jupyter Notebook
    Jupyterlab 的基本理念是將經典 notebook 中的所有功能以及新特性整合在一起。如果您對Jupyter Lab完全不熟悉,可以直接從頭開始閱讀本文。但是,如果您已經開始使用Jupyterlab 並且希望了解進階功能,請跳過前四部分並直接跳到 第5部分。當然,請確保您使用的是最新版本。
  • 使用Python和Jupyter Notebook進行數據分析
    ——漢·王符《潛夫論·明暗》數據分析,不管對於個人,還是公司,都是一種核心能力。和一些數據朋友聊天時,會談及一些有效的數據分析工具。懷揣著學習和進取的心態,我立刻在google上面檢索關鍵詞:python jupyter notebook data analysis,閱讀了一些與這個主題相關的系列文章,並且積極地進行實踐之,讓自己一來熟悉jupyter notebook這個工具,二來藉助這個工具實現更有效地做數據分析。
  • Jupyter可能並非理想的Notebook
    因此,這並不是一款生產工具。但是,很多機器學習開發者在生產中都經歷過把一個深度學習 notebook 重構成一個實際算法時深深的痛苦(reddit 和 Stack Overflow 上也有類似的討論)。保持精益生產的思想,我們應該努力減少浪費。