效率提升之道:9大Jupyter Notebook擴(kuò)展工具
本文轉(zhuǎn)載自公眾號(hào)“讀芯術(shù)”(ID:AI_Discovery)。
Jupyter Notebook可能是數(shù)據(jù)科學(xué)家們最愛使用的工具了,它能在一個(gè)文檔中混合代碼、文本和檢查輸出,這對(duì)其他一些編程IDE(集成開發(fā)環(huán)境)來說是不可能的。
不過,普通版本的Jupyter Notebook并不夠完美。你需要安裝一些擴(kuò)展插件,才能使Jupyter Notebook的性能更佳。
Jupyter Notebook擴(kuò)展是什么?
Jupyter Notebook擴(kuò)展是一系列JavaScript代碼,該代碼在后臺(tái)中運(yùn)行,并擴(kuò)展Notebook的功能。一個(gè)擴(kuò)展負(fù)責(zé)一個(gè)特定的功能,可根據(jù)需要安裝或刪除。
啟用擴(kuò)展
為了啟用擴(kuò)展,我們需要運(yùn)行pip命令來安裝該功能:
- pip install jupyter_contrib_nbextensions
- pip install jupyter_nbextensions_configurator
- jupytercontribnbextension install
安裝完成后,打開Jupyter Notebook,進(jìn)入Nbextension標(biāo)簽:
下面將要分享筆者最愛的幾款擴(kuò)展插件,強(qiáng)烈推薦你可以嘗試一下:
(1) Spellchecker(拼寫檢查程序)
該擴(kuò)展是用于編輯代碼的拼寫檢查程序。它只突顯拼寫錯(cuò)誤的單詞:
(2) Table of contents(目錄)
該擴(kuò)展為notebook增加一個(gè)目錄。通過點(diǎn)擊下方圖片中紅框內(nèi)的按鈕,即可激活或停用它:
當(dāng)使用含有較多內(nèi)容的notebook時(shí),該功能的實(shí)用性便體現(xiàn)出來了。點(diǎn)擊目錄中的任何標(biāo)題,即可直接定位到notebook的相應(yīng)位置。
(3) Collapsible headings(可折疊標(biāo)題)
這個(gè)擴(kuò)展插件能在notebook中起導(dǎo)航作用。安裝完成后,點(diǎn)擊標(biāo)題左側(cè)的切換按鈕,便可折疊或展開標(biāo)題下的小節(jié):
(4) ExecuteTime(執(zhí)行時(shí)間)
該擴(kuò)展能計(jì)算單元格運(yùn)行所需時(shí)間,并通知你最新執(zhí)行時(shí)間。這些信息顯示在每個(gè)單元格的下方。
這個(gè)功能非常實(shí)用,可以讓你在重運(yùn)行某個(gè)單元格之前能知道將要花費(fèi)多長時(shí)間,有助于避免重運(yùn)行執(zhí)行時(shí)間很長且不必運(yùn)行的單元。
(5) Autopep8
該擴(kuò)展插件能將代碼格式化為PEP 8標(biāo)準(zhǔn)格式。它能去除不需要的空格,或增加需要的空行,或者應(yīng)用PEP 8中列出的其他格式。為了安裝該插件,必須先安裝autopep8庫。運(yùn)行以下代碼進(jìn)行安裝:
- pip install autopep8
使用時(shí),先選擇需要格式化的單元格,再點(diǎn)擊菜單欄中標(biāo)紅的錘子按鈕。
應(yīng)用格式后,上面單元格內(nèi)的代碼將如下所示:
注意,在參數(shù)figsize=(15,10)中,等號(hào)兩邊的空格被刪除。另外,for循環(huán)中,在‘i’變量之前意外出現(xiàn)的額外空格將被刪除。
(6) Toggle all line numbers(切換所有行號(hào))
這是一個(gè)非常簡單的擴(kuò)展,通過切換面板菜單中的標(biāo)紅按鈕,即可打開或關(guān)閉代碼中的行號(hào)。
(7) Skip-traceback(跳過回溯)
當(dāng)代碼拋出錯(cuò)誤,該擴(kuò)展可以跳過回溯。它會(huì)顯示錯(cuò)誤名稱和簡短的錯(cuò)誤描述,而非整個(gè)回溯。以下是沒有擴(kuò)展的Jupyter顯示的正常錯(cuò)誤:
以下是有Skip-traceback擴(kuò)展的錯(cuò)誤顯示:
它能快速識(shí)別錯(cuò)誤的原因,尤其適用于很長的回溯。如果你需要,也能擴(kuò)展回溯,并查看整個(gè)版本。
(8) Variable Inspector(變量檢查器)
你可以通過選擇面板菜單上標(biāo)紅的按鈕來執(zhí)行該擴(kuò)展。點(diǎn)擊按鈕后,將顯示當(dāng)下命名空間中的所有變量信息,包括變量的名稱、類型、大小、形式和值。
(9) Hide code(隱藏代碼)
該擴(kuò)展能隱藏notebook中的所有代碼,這樣能讓編碼人員僅專注于輸出。通過點(diǎn)擊面板中標(biāo)紅的眼睛按鈕,即可隱藏和釋放代碼。
筆者使用這些擴(kuò)展已經(jīng)有一段時(shí)間了,其中一些對(duì)數(shù)據(jù)科學(xué)工作者來說絕對(duì)是的救星。安裝擴(kuò)展并不需要花費(fèi)很長時(shí)間,嘗試一下并不費(fèi)勁兒,它們一定能讓notebook更加功能化,讓你的工作效率大大提升。