增強Jupyter Notebook的功能,這裡有四個妙招 - 機器之心Pro

2021-01-07 機器之心Pro

選自toward data science

作者:George Seif

機器之心編譯

參與:魔王

你對 Jupyter Notebook 了解多少?本文介紹了一些自定義功能,幫助你使用 Jupyter notebook 更高效地寫代碼。

Jupyter Notebook 是所有開發者共享工作的神器,它為共享 Notebooks 提供了一種便捷方式:結合文本、代碼和圖更快捷地將信息傳達給受眾。目前,Jupyter Notebook 已經應用於數據分析和數據科學等領域。

然而,大部分開發者僅僅了解其皮毛。開發者使用 Jupyter Notebook 的基本功能來寫 Python 代碼、展示圖。但是你們知道 Jupyter 中還有大量自定義功能嗎?這些很酷的選項可以幫助你使用 Jupyter notebook 更高效地寫代碼、展示圖。

本文將介紹強化 Jupyter Notebook 功能的 4 種方法。

1. 執行 Shell 命令

在技術或編程文本中,shell 表示使用文本與計算機進行交互的方式。最流行的 Unix shell 是 Bash(Bourne Again SHell),Bash 是 Linux 機器上終端默認的 shell。

在使用 Python 工作時,你會經常在寫 Python 代碼和使用 shell 命令之間來回切換。例如,你想使用 Python 讀取磁碟中的某份文件,而這需要你確認文件名。通常情況下,你需要在終端輸入 ls,獲得當前目錄的所有文件和文件夾列表。但這樣來回切換非常繁瑣低效。

很炫酷的是,Jupyter 能夠執行 Shell 命令,你甚至無需離開瀏覽器。只需要在 shell 命令前加一個感嘆號!,Jupyter 會將其轉換為 Bash。在任一命令前加感嘆號!,它們就可以在 Python Jupyter Notebook 中運行。

# Listing folder contents>>> !lsmynotebook.ipynb stuff.txt# Getting the current directory>>> !pwd/home/george/github/project_1# Printing from Bash >>> !echo "Pizza is delicious!"Pizza is delicious!

我們還可以將 shell 命令的輸出分配給 Python 變量,如下所示:

# Getting the current directory. # The variable "X" now contains ["/home/george/github/project_1"]X = !pwd

2. 更換主題

很多文本編輯器和編程 IDE 都有自定義主題。開發者最喜歡的主題之一是暗黑主題(如 monaki),因為對於整天盯著屏幕的開發者而言,暗黑主題看起來比較舒適。幸運的是,Jupyter 有一個插件,允許用戶自行選擇主題。

要想安裝該插件,你只需在終端中運行以下 pip 命令:

pip install jupyterthemes

運行以下命令,可得到可用的主題列表:

jt -l

截至本文寫作時,可選擇的主題包括:

chesterishgrade3gruvboxdgruvboxlmonokaioceans16onedorksolarizeddsolarizedl

查看這些主題,如下圖所示,我們擁有大量不同的顏色選擇。

solarizedd(左),gruvboxl(中),grade3(右)。

3. Notebook 擴展插件

Jupyter Notebook 擴展插件(nbextensions)是一些 JavaScript 模塊,你可以使用它們強化 Notebook 的功能以及使用。擴展插件本質上修改了 Jupyter UI,以實現更穩健的功能。

我們首先通過 pip 安裝 nbextensions:

pip install jupyter_contrib_nbextensions jupyter contrib nbextension install

安裝完成後,啟動 Jupyter。你將看到一個新選項——NBextensions。選擇它之後,你會看到大量 Jupyter Notebook 擴展插件選項。

通過快速搜索,你可以查看這些擴展插件的功能。下面我將介紹幾個最重要的插件。

Table of Contents

正如其名稱所描述的那樣,Table of Contents 基於 notebook 中 # 創建的標題自動生成目錄。例如,我在 notebook 中創建了以下標題:

# This is a super big title## This is a big title### This is a medium title#### This is a small title

則左側會生成目錄。雙擊標題,可連結至對應章節內容。當 notebook 規模很大,選項很多時,這個功能非常方便!

Hinterland

代碼補全是大部分 IDE 都具備的常見功能,比如 PyCharm。開發者喜歡這個功能,因為這使得他們的工作更加簡單,開發者無需記住每一個命令,IDE 會準備好一切。

Hinterland 可在 Jupyter Notebook 內完成代碼補全。在鍵入過程中,你會看到一些代碼補全建議。尤其是當你搜索外部庫的命令時(示例如下所示)。這簡直太方便了!

拆分單元格(Split Cells)

拆分單元格允許開發者並排查看 2 個單元格。當你有兩個相關單元格時(比如描述及其對應的圖示),這個功能非常方便。

4. 使用 Qgrid 探索 Dataframes

最後一站是 Qgrid,該工具允許開發者在不使用複雜 Pandas 代碼的情況下,探索和編輯數據幀。Qgrid 可在 Jupyter notebook 中以交互的方式渲染 pandas 數據幀,這樣你就可以執行一些直觀的控制,如滾動、排序和篩選,以及雙擊單元格編輯數據幀。

我們首先安裝 Qgrid:

pip install qgridjupyter nbextension enable --py --sys-prefix widgetsnbextension

要想使用 Qgrid 渲染數據幀,開發者只需導入 Qgrid,然後將數據幀輸入到 show_grid 函數:

import qgridqgrid_widget = qgrid.show_grid(df, show_toolbar=True)qgrid_widget

這樣,你可以對數據幀執行大量交互式操作:

添加和刪除行;篩選行;編輯單元格。

將更多參數輸入 show_grid 函數可以執行其他交互式操作。關於 Qgrid 的全部功能,參見:https://github.com/quantopian/qgrid。

以上就是強化 Jupyter Notebook 功能的 4 種方法。

原文連結:https://towardsdatascience.com/4-awesome-tips-for-enhancing-jupyter-notebooks-4d8905f926c5

相關焦點

  • 上手jupyter notebook神器
    二、安裝與使用Jupyter Notebook主要有以下三個非常實用的功能:執行代碼、數據可視化以及使用 Markdown 功能寫報告執行代碼。一般是 Python 程序,也可以添加新的程式語言。數據可視化。如果我們經常在 Linux 環境編程開發,需要對數據可視化該怎麼辦呢?
  • Jupyter Notebook 的 28 個技巧(下)
    為 Jupyter 安裝其它內核Jupyter 有一個非常好的特性就是可以為不同語言運行內核。舉個慄子,下面就是如何去安裝和運行 R 內核。簡單選項:使用 Anaconda 安裝 R如果你是使用 Anaconda 來管理你的環境,那麼安裝 R 就是很簡單的事情。
  • 為jupyter notebook添加目錄(Jupyter安裝拓展nbextensions)
    notebook吧,現在的我算是半個jupyter notebook的愛好者吧,主要是它可以與markdown結合,將前言信息、分析用的code、圖表、展現的結論等信息都可以即時記錄,不用多個文檔間切換記錄。
  • 15個應該掌握的Jupyter Notebook 使用技巧
    並且有許多有趣的插件和神奇的命令,大大增強了python的編程體驗。1. 計算單元的執行時間我們可以在一個jupyter notebook單元的開頭使用%%time命令來計算執行該單元的時間。2. 進度條可以使用python外部庫創建進度條,它可以實時更新代碼運行的進度。它讓用戶知道正在運行的代碼腳本的狀態。
  • Jupyter Notebook介紹、安裝及配置教程
    三、jupyter Note的特點編程時具有語法高亮、縮進、tab補全的功能。可直接通過瀏覽器運行代碼,同時在代碼塊下方展示運行結果。四、安裝jupyter Note安裝前提安裝jupyter Notebook的前提是需要電腦安裝了Python(3.0版本以上)然後把pip升級到最新版本    3.安裝jupyter NoteBook五、運行jupyter Notebook1.默認埠啟動在終端輸入以下命令
  • 一款容易上手jupyter notebook神器
    二、安裝與使用Jupyter Notebook主要有以下三個非常實用的功能:執行代碼、數據可視化以及使用 Markdown 功能寫報告執行代碼。一般是 Python 程序,也可以添加新的程式語言。數據可視化。如果我們經常在 Linux 環境編程開發,需要對數據可視化該怎麼辦呢?
  • 我知道你會用Jupyter Notebook,但這些插件你都會了嗎?
    選自towardsdatascience作者:William Koehrsen機器之心編譯參與:王淑婷、路Jupyter Notebook 雖然很方便,但其功能卻捉襟見肘。通過安裝一些插件,能讓你的工作效率提高不少哦!
  • Jupyter可能並非理想的Notebook
    選自blog.sicara.com作者:Clément Walter機器之心編譯參與:Nurhachu調試和顯示在這一步,你有了全新的功能代碼。是時候在實際的數據上試一試了!這是notebook非常方便的所在了,因其存在單元格機制(cell mechanism)。但這顯然是一次工具切換。你為什麼要放棄具有所有快捷鍵和舒適度的IED,去在web瀏覽器上運行代碼呢?
  • Jupyter NoteBook 安裝以及常用配置
    環境下,多Python版本管理是個非常蛋疼的事情。命令行啟動在命令行中輸入jupyter notebook這個就使用了我之前設置的啟動目錄,所以我一般用命令行啟動,比較好控制啟動目錄。3. 啟動並臨時設置工作目錄jupyter notebook .
  • jupyter notebook在線平臺和教程
    jupyter logo很多同學都在了解學習python過程中,都聽過jupyter和jupyter notebook的大名,但默認的python安裝是不包含jupyter的,因此很多人還不了解jupyter是幹什麼用的
  • 快速入門 Jupyter notebook
    Jupyter notebook 是一個很強大的交互式和展示數據科學項目的工具,它可以作為一個開發文檔,包含代碼、解釋說明文字、代碼運行結果、數學公式等等,功能非常強大,也是現在非常流行的工具。除了通過 Anaconda 安裝,也可以直接採用 pippip install jupyter2. 創建你的第一個 Notebook這一部分將介紹如何運行和保存 notebooks,熟悉 Jupyter notebook 的結構和交互界面。這裡將通過一個例子來熟悉一些核心的用法,更好的了解 Jupyter notebook 的使用。
  • Jupyter Notebook 使用小技巧
    在 shell 命令中使用 python 變量的方法是在前面加一個「$」符號:魔術命令魔術命令是大大擴展 notebook 功能的快捷方式。要安裝 nbextensions,請在 anaconda 命令行中執行以下命令:conda install -c conda-forge jupyter_contrib_nbextensionsconda install -c conda-forge jupyter_nbextensions_configurator或者,你也可以使用 pip 安裝 nbextensions
  • Python學習|Anaconda、Jupyter Notebook、pycharm安裝使用詳解
    如何在一臺機器上運行這三個應用呢?答案是使用 conda 為每一個應用創建一個獨立的環境,然後在環境中安裝各自需要的軟體以及 python 版本,如下圖所示:6.2 jupyter notebook 使用6.2.1 打開 jupyter notebook打開 Anaconda prompt ,輸入 jupyter notebook(不要直接在開始菜單文件夾那裡點擊 Jupyter Notebook 打開)
  • 樹莓派打造python在線編程工具Jupyter Notebook
    樹莓派安裝docker以及簡單使用這次介紹一個python在線ide工具jupyter Notebook,也是用docker安裝的。安裝jupyter notebook,整體上還是很簡單的就是,就是設置密碼有一個小坑。
  • Jupyterlab:超強的下一代Jupyter Notebook
    300萬個 Jupyter Notebook 可供公開使用。讀到這裡,可能會有人說:所有這些功能在經典Notebook中都有,Jupyter Lab到底有什麼與眾不同?5、增強的Notebook功能Jupyterlab 不是Notebook格式的重新實現,而是一個基於所有現有架構之上的新前端。這種新的前端,使得我們可以實現在經典Notebook中無法實現的功能。
  • 手把手教你用 Jupyter Notebook 分析安全事件(一)
    Jupyter Notebook 項目是 IPython Notebook 庫的演變,開發這個庫的主要目的是為了通過可共享的 Web 文檔實現科學操作和高級數據分析功能,從而增強默認的 python 交互控制臺。
  • Jupyter Notebook 的 28 個技巧(上)
    原文地址:https://www.dataquest.io/blog/jupyter-notebook-tips-tricks-shortcuts/今天為大家分享一篇文章,總結了 28 個 Jupyter 中的實用技巧,本篇文章是上篇,為大家介紹了前 14 條,希望大家可以讓 Jupyter 成為你的一大助力。
  • 大神教小白搭建Jupyter Notebook環境
    在Pycham中只能運行一共py文件,而在Jupyter notebook可以運行一行代碼就可以了。2 、環境搭建你可以直接是通過 pip 命令安裝。pip install jupyter你也可以下載anaconda3、 conda常見命令conda不僅可以方便安裝,更新,卸載工具包,而且安裝時能自動安裝相應的依賴包。
  • jupyter notebook 一個編程交互式的記事本
    好奇計算機語言,近期想學一些東西,想要留下一些記錄什麼的供自己以後翻閱,想想還是將每日所操作的記錄下來:在利用python進行大數據分析一書中看到了jupyter這個工具,就照著做了,感覺還可以可以代替繼承的開發環境,對於感興趣的來說新奇有夠用
  • Python安裝Jupyter Notebook配置使用教程
    通過 pip 安裝:pip install jupyter安裝成功提示有:jupyter、jupyter-client、jupyter-console、jupyter-core。配置Jupyter notebook目錄路徑安裝完成先不要啟動,先配置目錄路徑。要不然默認打開和保存Jupyter notebook文件目錄在C盤。