-
1 # 小小猿愛嘻嘻
-
2 # 機器之心Pro
Jupyter Notebook 雖然很方便,但其功能卻捉襟見肘。透過安裝一些外掛,能讓你的工作效率提高不少哦!
Jupyter Notebook 是一個很棒的教學、探索和程式設計環境,但其功能不足也是出了名的。幸好,有許多方法可以改進這個不錯的工具,如 Jupyter Notebook 擴充套件工具。
極簡版教程在命令提示符中執行以下命令:
pip install jupyter_contrib_nbextensions && jupyter contrib nbextension install啟動 Jupyter Notebook,並導航至新的 Nbextensions 選項卡:
Jupyter Notebook 擴充套件選項
選擇你想要的擴充套件功能,享受它帶來的優勢。
(如果你沒看到擴充套件選項,開啟 notebook,單擊「edit」,然後點「nbextensions config」)
在 notebook 的工具欄裡可以看到擴充套件外掛:
較長版教程如果你覺得上面的教程太簡單,可以看看下面的複雜版。我還列出了我最喜歡的五個擴充套件外掛。
什麼是 notebook 擴充套件外掛?
Jupyter Notebook 擴充套件外掛是擴充套件 notebook 環境基本功能的簡單外掛。它們用 JavaScript 語言編寫,會自動套用程式碼格式或者在單元格完成後傳送瀏覽器通知。擴充套件外掛目前僅支援 Jupyter Notebook(不支援 Jupyter Lab)。
為什麼要使用擴充套件外掛?Jupyter Notebook 是一個很好用的工具,可用於教學、學習、原型設計、探索和嘗試新方法(甚至可用於 Netflix 的生產過程中)。但是,原版 notebook 功能有限,有時令人挫敗。雖然 Jupyter Notebook 擴充套件外掛沒有完全解決這個問題,但它們確實能讓你的工作變得更輕鬆。
該用哪些擴充套件外掛?
以下是我最常用的五種 Jupyter Notebook 擴充套件外掛:
1 Table of Contents:更容易導航
如果你在一個 Jupyter Notebook 中同時開啟了十幾個單元格,那你想跟蹤所有單元格就會有些困難。Table of Contents 透過新增 TOC 連結解決了這個問題,透過 TOC 連結你可以定位到頁面中的任何位置。
Table of Contents 介面
你還可以使用該擴充套件外掛在 notebook 的頂部新增一個連結目錄。這樣會顯示你選擇了哪一個目錄以及哪一個正在執行:
Notebook 中的 Table of Contents 介面
2 Autopep8:輕輕一擊就能獲得簡潔程式碼
我們都應該編寫符合 pep8 標準的程式碼,但有時你會陷入分析,難以堅持這種標準。所以當你寫完程式碼後,只要單擊這個選項,就可以讓程式碼變得簡潔漂亮。
使用 Autopep8 的效果
3 variable inspector:跟蹤你的工作空間
variable inspector 會顯示你在 notebook 中建立的所有變數的名稱,以及它們的型別、大小、形狀和值。
variable inspector
這個工具對於從 RStudio 遷移過來的資料科學家來說是無價之寶。如果你不想繼續列印 df.shape 或無法重新呼叫 x 的 type,這個工具對你來說也同樣重要。
4 ExecuteTime:顯示單元格的執行時間和耗時
我經常不知道某個單元格需要執行多久或者最後一次執行一個開啟好幾天的 notebook 是什麼時候。ExecuteTime 完美解決這個問題,它會顯示單元格的執行完成時間和所耗時長。
ExecuteTime 的輸出
的確有更好的計時方法,如 %%timeit,但 ExecuteTime 易於實現,且可以覆蓋 notebook 中的所有單元格。
5 隱藏程式碼輸入:隱藏過程,展示結果
雖然有些人喜歡看到某項艱苦工作的具體分析,但有些人卻只想看到結果。隱藏所有輸入的外掛讓你能夠立即隱藏 notebook 中的所有程式碼,只保留結果。
隱藏所有程式碼
下一次如果有人說他們只想看結果,你只要單擊一下就可以了。(不過你還是得經常檢查程式碼。)
以上是我最常用的五種擴充套件外掛,你還可以嘗試其他擴充套件外掛。先安裝擴充套件外掛,然後開啟 notebook 探索吧!
結論安裝 Jupyter Notebook 擴充套件外掛,花點時間弄清楚哪些有用,然後提高自己的工作效率。雖然這些功能不至於改變你的人生,但它們帶來的益處也是值得的。而且累積起來為你節約了很多寶貴的開發時間。
如果你正在寫生產程式碼,你可能會更願意花些時間學習 IDE(我喜歡 VS Code),但 Jupyter Notebook 仍然是資料科學工作流程中不可或缺的一部分。如果你要使用這個環境,就最好把它用到極致,以從中獲得最大的收益。
回覆列表
Jupyter Notebook是python一個非常不錯的開發環境,基於Web瀏覽器,介面乾淨、整潔、漂亮,使用起來非常不錯,擴充套件外掛也非常豐富,下面我簡單介紹Jupyter Notebook非常實用的5個外掛,分別是Collapsible headings(摺疊標題),Notify(通知),Codefolding(摺疊程式碼),tqdm_notebook(執行進度條),%debug(程式碼除錯),感興趣的朋友可以嘗試一下,實驗環境win10+python3.6,主要內容如下:
1.首先,需要安裝Nbextensions擴充套件,這個直接在cmd視窗輸入命令“pip install jupyter_nbextensions_configurator jupyter_contrib_nbextensions”就行,如下,安裝的包比較多,需要稍微等待一會兒:
安裝完成後,我們需要將Nbextensions安裝到Notebook中,所以需要執行命令“jupyter contrib nbextension install --user”和“jupyter nbextensions_configurator enable --user”,如下,很快就能配置成功:
2.安裝成功後,我們再開啟Notebook,就會在功能欄部分新增Nbextensions擴充套件,如下,這裡我們根據需求,勾選相關功能,如下,Collapsible headings(摺疊標題),Notify(通知),Codefolding(摺疊程式碼)等,這裡可以自行設定:
3.最後我們就可以進行5個外掛的測試了,主要測試及截圖如下:
Collapsible headings(摺疊標題):依據標題摺疊模組
Notify(通知):程式執行完成後,會自動提示(瀏覽器需要開啟Notify功能)
Codefolding(摺疊程式碼):程式碼過長的話,可自行摺疊
tqdm_notebook(執行進度條):顯示程式執行的進度條
%debug(程式碼除錯):除錯程式碼,自動定位到錯誤位置
目前,就介紹這5個實用的外掛吧。總的來說,整個過程很簡單,這5個外掛使用起來也非常不錯,熟悉一下過程,多使用幾遍,很快就能掌握的,當然,Jupyter Notebook還有許多其他外掛,像%lsmagic,Execute time extension等,網上也有相關教程和資料,感興趣的話,可以搜一下,希望以上分享的內容能對你有所幫助吧,也歡迎大家評論、留言。