Jupyter 快速指南



IPython - 簡介

Jupyter 專案是一套用於互動式計算的軟體產品。IPython 最初由 Fernando Perez 於 2001 年開發,作為增強的 Python 直譯器。2011 年推出了基於 Web 的 IPython 終端介面,即 IPython notebook。2014 年,Jupyter 專案作為 IPython 的衍生專案啟動。

Jupyter 專案下的軟體包包括:

  • Jupyter notebook - 基於 Web 的 Python、Julia、R 和許多其他程式設計環境的介面

  • QtConsole - 基於 Qt 的 Jupyter 核心終端,類似於 IPython

  • nbviewer - 分享 Jupyter notebooks 的工具

  • JupyterLab - 所有產品的現代基於 Web 的整合介面。

Python 的標準發行版包含一個REPL(讀取-求值-列印迴圈)環境,它以帶有>>>提示符的 Python shell 的形式出現。IPython(代表互動式 Python)是 Python 的增強型互動式環境,與標準 Python shell 相比,它具有許多功能。

IPython 的功能

與標準 Python 相比,IPython 提供了更多功能,如下所示:

  • 提供強大的互動式 Python shell。

  • 作為 Jupyter notebook 和 Jupyter 專案的其他前端工具的主要核心。

  • 具有物件自省能力。自省是在執行時檢查物件屬性的能力。

  • 語法高亮。

  • 儲存互動歷史記錄。

  • 關鍵字、變數和函式名的 Tab 自動補全。

  • 魔術命令系統,用於控制 Python 環境和執行作業系統任務。

  • 能夠嵌入到其他 Python 程式中。

  • 提供對 Python 偵錯程式的訪問。

歷史和發展

IPython 最初由 Fernando Perez 於 2001 年開發。其當前版本是 IPython 7.0.1,需要 Python 3.4 或更高版本。IPython 6.0 是第一個支援 Python 3 的版本。使用 Python 2.7 的使用者應該使用 IPython 2.0 到 5.7 版本。

計算筆記本的概念始於 80 年代,當時 MATLAB 和 Mathematica 釋出。這些互動式 shell 的 GUI 前端具有文字格式化、新增圖形、表格和新增數學符號等功能。Sage notebook 也是一個基於 Web 的筆記本。

IPython 的建立者從 2005 年開始致力於 IPython shell 的 notebook 介面。IPython notebook 很快增加了對其他語言(如 R 和 Julia)的支援。在 2014 年,Perez 啟動了 Jupyter 專案作為 IPython 的衍生專案,因為 IPython 專案隨著 notebook 伺服器和 Qt 控制檯等產品的增加而變得越來越龐大。

從 IPython 4.0 開始,所有附加元件都轉移到了 Jupyter 專案,併為 IPython notebook 添加了對其他語言的支援。IPython 繼續專注於改進其增強的直譯器功能。它還為 Jupyter notebook 前端提供主要的核心。

IPython - 安裝

Anaconda Python 發行版預設包含 IPython。它可以從 Anaconda 的下載頁面下載 www.anaconda.com/download/ 此連結上提供了所有主要作業系統(Windows、MacOS 和 Linux)和架構(32 位和 64 位)的二進位制檔案。

要在標準 Python 安裝中單獨安裝 IPython,可以使用以下 pip 命令:

pip3 install ipython

IPython 內部使用以下軟體包:

序號 IPython 依賴項和功能
1

colorama

用於從 Python 列印彩色終端文字的跨平臺 API

2

jedi

Python 的自動補全工具

3

pickleshare

具有併發支援的小型“shelve”式資料儲存

4

prompt_toolkit

用於在 Python 中構建強大的互動式命令列的庫

5

pygments

用 Python 編寫的語法高亮顯示包

6

simplegeneric

簡單的泛型函式

7

traitlets

Python 應用程式的配置系統。

通常,所有依賴項都會自動安裝。否則,可以使用 pip 單獨安裝它們。

IPython - 開始

本章將解釋如何開始使用 IPython。

從命令提示符啟動 IPython。

在深入瞭解 IPython 之前,請注意,您將看到兩個主要的 Python 提示符,而不是常規的>>>,如下所述:

  • In[1] 出現在任何輸入表示式之前。

  • Out[1] 出現在輸出出現之前。

此外,方括號中的數字會自動遞增。請觀察以下螢幕截圖以更好地理解:

IPython Command Prompt

現在,如果您已安裝 Anaconda Python 發行版,請從開始選單開啟 Anaconda 提示符。

Anaconda prompt

從 conda 提示符啟動 IPython

與常規 Python 控制檯相比,我們可以注意到一些區別。IPython shell 使用不同的顏色方案為不同的元素(如表示式、函式、變數等)顯示語法高亮顯示。

IPython shell

另一個有用的增強功能是 Tab 自動補全。我們知道每個物件在其類中都定義了一個或多個可用方法。當您在物件之前的點後按 Tab 鍵時,IPython 會彈出相應的方法列表。

在下面的示例中,定義了一個字串。作為響應,將顯示字串類的各種方法。

String Class Methods

IPython 透過在物件前面加上“?”來提供任何物件的資訊。它包括類的文件字串、函式定義和建構函式詳細資訊。例如,要探索上面定義的字串物件 var,請在輸入提示符中輸入var?。結果將顯示有關它的所有資訊。請觀察以下螢幕截圖以更好地理解:

IPython Info

魔術函式

IPython 的內建魔術函式非常強大。有兩種型別的魔術函式。

  • 行魔術,其作用非常類似於 DOS 命令。
  • 單元魔術,其作用於多行程式碼。

我們將在後續章節中詳細學習行魔術函式和單元魔術函式。

IPython - 執行和編輯 Python 指令碼

在本章中,讓我們瞭解如何執行和編輯 Python 指令碼。

執行命令

您可以在輸入提示符中使用run命令來執行 Python 指令碼。run 命令實際上是行魔術命令,應該寫成%run。但是,%automagic模式預設始終啟用,因此您可以省略它。

In [1]: run hello.py
Hello IPython

編輯命令

IPython 還提供編輯魔術命令。它呼叫作業系統的預設編輯器。您可以透過 Windows 記事本編輯器開啟它,並可以編輯指令碼。儲存輸入後關閉它後,將顯示修改後的指令碼的輸出。

In [2]: edit hello.py
Editing... done. Executing edited code...
Hello IPython
welcome to interactive computing

請注意,hello.py 最初只包含一個語句,編輯後又添加了一個語句。如果未向編輯命令提供檔名,則會建立一個臨時檔案。請觀察以下顯示相同的程式碼:

In [7]: edit
IPython will make a temporary file named:
C:\Users\acer\AppData\Local\Temp\ipython_edit_4aa4vx8f\ipython_edit_t7i6s_er.py
Editing... done. Executing edited code...
magic of IPython
Out[7]: 'print ("magic of IPython")'

IPython - 歷史命令

IPython 保留當前會話的命令及其結果。我們可以透過按向上和向下鍵來滾動瀏覽以前的命令。

此外,最後三個輸出物件儲存在特殊變數 _、__ 和 ___ 中。history魔術命令顯示當前會話中的先前命令,如下面的螢幕截圖所示:

History Command

IPython - 系統命令

如果輸入單元格中的語句以感嘆號 (!) 開頭,則將其視為底層作業系統的系統命令。例如,!ls(對於 Linux)和!dir(對於 Windows)顯示當前目錄的內容

Exclamation Symbol (!) Command

系統命令的輸出也可以分配給 Python 變數,如下所示:

Output of system command

變數儲存沒有顏色的輸出,並在換行符處分割。

也可以將 Python 變數或表示式與系統命令呼叫組合使用。花括號 {} 中的變數可以嵌入到命令文字中。請觀察以下示例:

System Command Calls

這是另一個示例,用於理解在 Python 變數前加上 $ 也能達到相同的結果。

Prefixing Python Variable

IPython - 命令列選項

在本章中,讓我們瞭解如何在 IPython 中使用各種命令列選項。

呼叫 IPython 程式

您可以使用以下選項呼叫 IPython 程式:

C:\python36> ipython [subcommand] [options] [-c cmd | -m mod | file] [--] [arg]

檔案選項是一個帶有 .py 副檔名的 Python 指令碼。如果沒有其他選項,則執行指令碼並重新出現命令提示符。

C:\python36>ipython hello.py
Hello IPython
welcome to interactive computing

子命令和引數

IPython 命令接受以下子命令選項:

  • Profile - 建立和管理 IPython 配置檔案。

  • 核心 (Kernel) − 啟動一個沒有附加前端的核心。

  • 定位 (Locate) − 列印 IPython 目錄的路徑。

  • 歷史記錄 (History) − 管理 IPython 歷史資料庫。

IPython 配置檔案子命令接受以下引數:

  • ipython profile create myprofile − 建立一個新的配置檔案。

  • ipython profile list − 列出所有可用的配置檔案。

  • ipython locate profile myprofile − 定位所需的配置檔案。

要安裝新的 IPython 核心,請使用以下命令:

Ipython kernel –install –name

要列印 IPython 目錄的路徑,請使用以下命令:

C:\python36>ipython locate myprofile
C:\Users\acer\.ipython

此外,我們知道:

  • history 子命令管理 IPython 歷史資料庫。

  • trim 選項將 IPython 歷史資料庫減少到最後 1000 條條目。

  • clear 選項刪除所有條目。

IPython 的一些其他重要命令列選項列在下面:

序號 IPython 命令 & 說明
1

--automagic

啟用自動呼叫魔法命令。

2

--pdb

在每次異常後啟用自動呼叫 pdb 偵錯程式。

3

--pylab

預載入 matplotlib 和 numpy 用於與預設 matplotlib 後端進行互動式使用。

4

--matplotlib

配置 matplotlib 用於與預設 matplotlib 後端進行互動式使用。

5

--gui=options

啟用與任意 ('glut', 'gtk', 'gtk2','gtk3', 'osx', 'pyglet', 'qt', 'qt4', 'qt5', 'tk', 'wx', 'gtk2', 'qt4') GUI 事件迴圈整合。

一些 IPython 命令列選項的示例用法如下表所示:

序號 IPython 命令 & 說明
1

ipython --matplotlib

啟用 matplotlib 整合

2

ipython --matplotlib=qt

使用 qt4 後端啟用 matplotlib 整合

3

ipython --profile=myprofile

使用配置檔案 myprofile 啟動

4

ipython profile create myprofile

使用預設配置檔案建立配置檔案 myprofile

5

ipython help profile

顯示配置檔案子命令的幫助

6

ipython locate

列印 IPython 目錄的路徑

7

ipython locate profile myprofile

列印配置檔案 `myprofile` 的目錄路徑

IPython - 動態物件內省

IPython 有多種方法可以動態地獲取有關 Python 物件的資訊。在本章中,讓我們學習在 IPython 中進行動態物件內省的方法。

使用 ??? 可以提供關於物件的特定和更詳細的資訊。在下面討論的第一個示例中,建立了一個簡單的整數物件 a。可以透過在輸入單元中鍵入 a ? 來獲取其資訊。

Dynamic Object Introspection in IPython

在第二個示例中,讓我們定義一個函式並使用 ??? 來內省此函式物件。

Function and Introspect

請注意,魔法函式 %psearch 等效於使用 ??? 獲取物件資訊。

IPython - I/O 快取

IPython 控制檯上的輸入和輸出單元按順序遞增編號。在本章中,讓我們詳細瞭解 Python 中的 IO 快取。

在 IPython 中,可以使用向上箭頭鍵檢索輸入。此外,所有以前的輸入都已儲存並可以檢索。變數 _i__i___i 始終儲存前三個輸入條目。此外,In_in 變數提供所有輸入的列表。顯然,_in[n] 從第 n 個輸入單元檢索輸入。以下 IPython 會話可以幫助您理解這種現象:

In [1]: print ("Hello")
Hello

In [2]: 2+2
Out[2]: 4

In [3]: x = 10

In [4]: y = 2

In [5]: pow(x,y)
Out[5]: 100

In [6]: _iii, _ii, _i
Out[6]: ('x = 10', 'y = 2', 'pow(x,y)')

In [7]: In
Out[7]:
['',
   'print ("Hello")',
   '2+2',
   'x = 10',
   'y = 2',
   'pow(x,y)',
   '_iii, _ii, _i',
   'In'
]
   
In [8]: In[5] 9. IPython — IO
Out[8]: 'pow(x,y)'

In [9]: _ih
Out[9]:
['',
   'print ("Hello")',
   '2+2',
   'x = 10',
   'y = 2',
   'pow(x,y)',
   '_iii, _ii, _i',
   'In',
   'In[5]',
   '_ih'
]
   
In [11]: _ih[4]
Out[11]: 'y = 2'

In [12]: In[1:4]
Out[12]: ['print ("Hello")', '2+2', 'x=10']

類似地,單下劃線、雙下劃線和三下劃線充當變數以儲存前三個輸出。此外,Out_oh 形成一個單元格編號和執行操作(不包括賦值語句)的單元格輸出的字典物件。要檢索特定輸出單元格的內容,請使用 Out[n]_oh[n]。您還可以使用切片來獲取一定範圍內的輸出單元格。

In [1]: print ("Hello")
Hello

In [2]: 2+2
Out[2]: 4

In [3]: x = 10

In [4]: y = 3

In [5]: pow(x,y)
Out[5]: 1000

In [6]: ___, __, _
Out[6]: ('', 4, 1000)

In [7]: Out
Out[7]: {2: 4, 5: 1000, 6: ('', 4, 1000)}

In [8]: _oh
Out[8]: {2: 4, 5: 1000, 6: ('', 4, 1000)}

In [9]: _5
Out[9]: 1000

In [10]: Out[6]
Out[10]: ('', 4, 1000)

將 IPython 設定為預設 Python 環境

不同的環境變數會影響 Python 的行為。PYTHONSTARTUP 環境變數被賦值給一個 Python 指令碼。因此,此指令碼在 Python 提示符出現之前執行。如果每次啟動新的 Python 會話時都需要預設載入某些模組,這將非常有用。

以下指令碼 (start.py) 匯入 IPython 模組並執行 start_ipython() 函式,以在呼叫 Python 可執行檔案時使用 IPython shell 替換預設的 Python shell 提示符 (>>>)

import os, IPython
os.environ['PYTHONSTARTUP'] = ''
IPython.start_ipython()
raise SystemExit

假設此檔案儲存在 Python 的安裝目錄 (c:\python36) 中,請設定 PYTHONSTARTUP 環境變數並從命令列啟動 Python。然後將出現 IPython shell,如下所示:

Python’s Installation Directory

請注意,可以使用 Windows 中的“系統屬性”對話方塊和 Linux 中的 export 命令永久設定環境變數。

IPython - 匯入 Python Shell 程式碼

IPython 可以從具有預設 >>> 提示符的標準 Python 控制檯和另一個 IPython 會話讀取。以下螢幕截圖顯示了在標準 Python shell 中編寫的 for 迴圈:

Standard Python Shell Loop

複製程式碼(以及 Python 提示符)並將程式碼貼上到 IPython 輸入單元格中。IPython 會智慧地過濾掉輸入提示符(>>> 和 ...)或 IPython 提示符(In [N]: 和 ...:)。

IPython Input Cell

類似地,可以將來自一個 IPython 會話的程式碼貼上到另一個會話中。下面給出的第一個螢幕截圖顯示在一個 IPython 視窗中定義 SayHello() 函式:

IPython window

現在,讓我們選擇程式碼並將其貼上到另一個 IPython shell 中,然後呼叫 SayHello() 函式。

IPython shell Cmd

嵌入 IPython

IPython 模組的 embed() 函式使得可以在 Python 程式碼的名稱空間中嵌入 IPython。這樣,您就可以在預設的 Python 環境中利用 IPython 的功能,例如物件內省和製表符補全。

IPython module

在嵌入之前出現在全域性名稱空間中的 Python 物件將可用於 IPython。

Python objects

如果在 IPython 中形成了新物件或修改了以前的物件,則在退出 IPython 後,它們將自動可用於預設環境。嵌入式 IPython shell 不會更改先前程式碼或物件的狀態。

但是,如果 IPython 嵌入到區域性名稱空間(例如函式內部),則一旦關閉 IPython,其中的物件將不可用。在這裡,我們定義了一個函式 add()。在 add() 中,我們呼叫 IPython 並聲明瞭一個變數。如果我們在關閉 IPython 後嘗試訪問 IPython 中的變數,則會引發 NameError 異常。

IPython NameError Exception

IPython - 魔術命令

與標準 Python shell 相比,魔法命令或魔法函式是 IPython 提供的重要增強功能之一。這些魔法命令旨在解決使用 Python 進行資料分析中的常見問題。事實上,它們控制 IPython 本身的行為。

魔法命令充當便捷函式,其中 Python 語法不是最自然的。它們對於在其工作流程中嵌入無效的 Python 語法非常有用。

魔法命令的型別

有兩種型別的魔法命令:

  • 行魔法
  • 單元魔法

行魔法

它們類似於命令列呼叫。它們以 % 字元開頭。行的其餘部分是其引數,無需括號或引號。行魔法可以用作表示式,其返回值可以賦值給變數。

單元魔法

它們具有 %% 字元字首。與行魔法函式不同,它們可以在其呼叫下方的多行上執行。事實上,它們可以對接收到的輸入進行任意修改,這些輸入甚至根本不需要是有效的 Python 程式碼。它們將整個塊作為單個字串接收。

要了解有關魔法函式、內建魔法函式及其文件字串的更多資訊,請使用魔法命令。特定魔法函式的資訊可以透過 %magicfunction? 命令獲取。現在讓我們描述一些內建的行和單元魔法命令。

內建行魔法

%autocall [mode]

此魔法函式使函式無需使用括號即可自動呼叫。它接受三個可能的模式引數:0(關閉)、1(智慧)是預設值2(始終開啟)

Built-in line Magics

%automagic

如果設定為 1,則無需鍵入初始 % 即可呼叫魔法函式。在沒有引數的情況下,它會切換開啟/關閉。要停用,請設定為 0。

以下示例顯示了一個魔法函式 %pwd(顯示當前工作目錄)在 %automagic 設定為 1 時無需前導 % 即可呼叫。

%automagic

%cd

此行魔法更改當前目錄。此命令會自動維護您在 IPython 會話期間訪問的目錄的內部列表,位於變數 _dh 中。您還可以執行“cd -<tab>”以便方便地檢視目錄歷史記錄。

%cd

用法

%cd 命令可以以下幾種方式使用:

  • %cd <dir> − 將當前工作目錄更改為 <dir>

  • %cd.. − 將當前目錄更改為父目錄

  • %cd − 更改為上次訪問的目錄。

%dhist

此魔法命令列印您在本會話中訪問的所有目錄。每次使用 %cd 命令時,此列表都會在 _dh 變數中更新。

%dhist

%edit

此魔法命令呼叫當前作業系統的預設文字編輯器(Windows 為記事本)來編輯 Python 指令碼。關閉編輯器後,將執行指令碼。

%env

此魔法命令將列出所有環境變數。它還會讀取特定變數的值或設定環境變數的值。

用法

%cd 命令可以以下幾種方式使用:

  • %env − 列出所有環境變數

  • %env var − 獲取 var 的值

  • %env var val − 設定 var 的值

%env

%gui [GUINAME]

在沒有引數的情況下使用此命令將啟用或停用 IPython GUI 事件迴圈整合。使用 GUINAME 引數,此魔法將預設 GUI 工具包替換為指定的工具包。

序號 命令 & 說明
1

%gui wx

啟用 wxPython 事件迴圈整合

2

%gui qt4|qt

啟用 PyQt4 事件迴圈整合

3

%gui qt5

啟用 PyQt5 事件迴圈整合

4

%gui gtk

啟用 PyGTK 事件迴圈整合

5

%gui gtk3

啟用 Gtk3 事件迴圈整合

6

%gui tk

啟用 Tk 事件迴圈整合

7

%gui osx

啟用 Cocoa 事件迴圈整合

8

(需要 %matplotlib 1.1)

9

%gui

停用所有事件迴圈整合

%lsmagic

顯示當前可用的所有魔法函式

%lsmagic

%matplotlib

此函式在 IPython 會話期間啟用 matplotlib 互動式支援。但是,它不會匯入 matplotlib 庫。matplotlib 預設 GUI 工具包是 TkAgg。但是您可以顯式請求不同的 GUI 後端。您可以看到可用後端的列表,如下所示:

In [4]: %matplotlib --list
Available matplotlib backends: 
['osx', 'qt4', 'qt5', 'gtk3', 'notebook', 'wx', 'qt', 'nbagg','gtk', 'tk', 'inline']

此處顯示的 IPython 會話使用 qt 工具包繪製正弦波:

%matplotlib

在使用 Jupyter notebook 時,%matplotlib inline 指令僅在瀏覽器中顯示繪圖輸出。

%notebook

此函式將當前 IPython 歷史記錄轉換為具有 ipynb 副檔名的 IPython notebook 檔案。先前示例中的輸入單元格儲存為 sine.ipynb

%notebook sine.ipynb

%pinfo

此函式類似於物件內省 ? 字元。要獲取有關物件的資訊,請使用以下命令:

%pinfo object

這與 object??object 同義。

%precision

此魔法函式將浮點結果限制為小數點後指定位數。

%precision

%pwd

此魔法函式返回當前工作目錄。

%pwd

%pylab

此函式使用 matplotlib 和 numpy 庫填充當前 IPython 會話。

%pylab

%recall

在沒有引數的情況下執行時,此函式將執行上一個命令。

注意,在%recall n中,前面的數字是輸入單元格的編號。因此,將呼叫第n個單元格中的命令。可以使用諸如%recall 1-4之類的命令來呼叫單元格區域中的命令。當前輸入單元格將填充已呼叫的單元格內容,游標將閃爍,直到按下回車鍵。

%recall

%run

此命令從IPython shell內部執行Python指令碼。

%run

%time

此命令顯示IPython環境執行Python表示式所需的時間。

%time

%timeit

此函式還顯示IPython環境執行Python表示式所需的時間。Python語句或表示式的執行時間使用timeit模組。此函式可以作為行魔法和單元格魔法使用,如下所述:

  • 行模式下,您可以計時單行程式碼。

  • 單元格模式下,第一行的語句用作設定程式碼,並對單元格的主體進行計時。單元格主體可以訪問在設定程式碼中建立的任何變數。

%who

此行魔法函式列印所有互動式變數,並進行一些簡單的格式化。如果給出任何引數,則僅列印型別與這些引數之一匹配的變數。

%who

IPython自定義行魔法函式

IPython的核心庫包含register_line_magic裝飾器。使用此裝飾器,使用者定義的函式將轉換為行魔法函式。

IPython Custom Line Magic function

Jupyter 專案 - 概述

Jupyter專案始於2014年作為IPython專案的衍生專案。IPython的語言無關特性被遷移到Jupyter專案下。這個名字指的是Jupyter支援的核心程式語言:Julia、Python和R。Jupyter專案下的產品旨在支援互動式資料科學和科學計算。

Jupyter專案包含以下產品:

  • IPykernel − 此軟體包為Jupyter提供IPython核心。

  • Jupyter客戶端 − 此軟體包包含Jupyter協議的參考實現。它也是一個用於啟動、管理和與Jupyter核心通訊的客戶端庫。

  • Jupyter Notebook − 此前稱為IPython Notebook。這是一個基於Web的介面,用於IPython核心以及許多其他程式語言的核心。

  • Jupyter核心 − 核心是Jupyter產品的程式語言的執行環境。

Jupyter核心列表如下:

  • Qtconsole − 一個基於Qt的豐富的控制檯,用於與Jupyter核心一起工作

  • nbconvert − 將Jupyter Notebook檔案轉換為其他格式

  • JupyterLab − 基於Web的整合介面,用於筆記本、編輯器、控制檯等。

  • nbviewer − Notebook檔案的HTML檢視器

Jupyter Notebook - 簡介

IPython Notebook由Fernando Perez開發,作為IPython核心的基於Web的前端。為了建立一個用於多種語言的整合互動式計算環境,Notebook專案被轉移到Jupyter專案下,除了Python之外,還為Julia和R程式設計環境提供前端。

Notebook文件由富文字元素組成,包含HTML格式的文字、圖形、數學公式等。Notebook也是一個可執行文件,包含Python或其他支援語言的程式碼塊。

Jupyter Notebook是一個客戶端-伺服器應用程式。該應用程式在本地機器上啟動伺服器,並在Web瀏覽器中開啟Notebook介面,可以在其中進行編輯和執行。Notebook儲存為ipynb檔案,可以匯出為html、pdf和LaTex檔案。

線上使用Jupyter

如果您不熟悉Jupyter,可以在本地安裝之前嘗試Jupyter Notebook的功能。為此,請在瀏覽器中訪問https://jupyter.tw,然後選擇“使用Python試用Jupyter”選項。

Try Jupyter with Python

這將開啟https://mybinder.org的主頁。從“檔案”選單中,選擇“新建Notebook”選項以在瀏覽器中開啟一個空白的Jupyter Notebook。與IPython終端類似的輸入單元格將顯示出來。您可以在其中執行任何Python表示式。

Jupyter New Notebook

安裝和開始

您可以使用pip包管理器輕鬆安裝Jupyter Notebook應用程式。

pip3 install jupyter

要啟動應用程式,請在命令提示符視窗中使用以下命令。

c:\python36>jupyter notebook

伺服器應用程式在預設埠號8888上執行,瀏覽器視窗開啟以顯示Notebook儀表板。

Jupyter Notebook Dashboard

觀察到,儀表板在瀏覽器右側邊界附近顯示一個下拉選單,在“新建”按鈕旁邊有一個箭頭。它包含當前可用的Notebook核心。現在,選擇Python 3,然後在新標籤頁中開啟一個新的Notebook。將顯示類似於IPython控制檯的輸入單元格。

您可以在其中執行任何Python表示式。結果將顯示在輸出單元格中。

Result Out Cell

Jupyter Notebook - 儀表板

Jupyter Notebook的儀表板包含三個標籤頁,如下面的螢幕截圖所示:

Jupyter Dashboard

檔案標籤頁

“檔案”標籤頁顯示呼叫Notebook應用程式的當前目錄下的檔案和資料夾。對應於當前開啟的Notebook的行以及執行狀態顯示在“上次修改”列的旁邊。它還顯示“上傳”按鈕,可以使用該按鈕將檔案上傳到Notebook伺服器。

執行標籤頁

“執行”標籤頁顯示當前正在執行的Notebook。

叢集標籤頁

第三個標籤頁“叢集”由IPython並行提供。IPython的平行計算框架,是IPython核心的擴充套件版本。

從“新建”下拉選單中選擇“終端”以開啟一個cmd視窗。您現在可以在這裡啟動IPython終端。

IPython Terminal

Jupyter Notebook - 使用者介面

在Jupyter的使用者介面中,檔名稱顯示在標題欄中的徽標旁邊。

Jupyter Filename Creation

您可以在標題欄下方找到選單欄。每個選單包含許多選項,稍後將進行討論。

Jupyter Notebook MenuBar

一排構成工具欄的圖示可幫助使用者執行經常需要的操作

Jupyter Notebook ToolBar

Notebook有兩種模式:命令模式編輯模式。單擊單元格時,Notebook進入編輯模式。請注意核心名稱旁邊的鉛筆符號。

Jupyter Notebook Editmode

核心指示器符號顯示在核心名稱的右側。請注意,空心圓圈表示核心空閒,實心圓圈表示核心繁忙。

Jupyter Notebook Kernel Indicator

檔案選單

以下是“檔案”選單中提供的選項:

序號 檔案選單和描述
1

新建Notebook

選擇核心以啟動新的Notebook

2

開啟

將使用者帶到儀表板以選擇要開啟的Notebook

3

另存為

儲存當前Notebook並啟動新的核心

4

重新命名

重新命名當前Notebook

5

儲存

儲存當前Notebook並存儲當前檢查點

6

恢復

將Notebook的狀態恢復到之前的檢查點

7

下載

以各種檔案格式之一匯出Notebook

可用的檔案格式如下所示:

File Formats

編輯選單

編輯選單包含用於執行剪下、複製和貼上單元格、刪除選定單元格、拆分和合並單元格、上下移動單元格、在Notebook中查詢和替換、剪下/複製附件以及插入影像的按鈕。

檢視選單

此選單中的按鈕可幫助我們隱藏/顯示標題、工具欄和單元格編號。

插入選單

此選單為您提供在當前單元格之前或之後插入單元格的選項。

單元格選單

此選單中的選項允許使用者執行Notebook中的所有單元格或特定單元格。您還可以將單元格型別設定為程式碼型別、Markdown或原始nbconvert型別。

核心選單

從此選單中,您可以啟動、中斷、重啟或關閉核心。您還可以啟動新的核心。

小部件選單

從此選單中,您可以儲存、清除、下載或嵌入小部件狀態。

幫助選單

從此選單中顯示各種預定義的鍵盤快捷鍵。您還可以根據自己的方便調整快捷鍵。

Jupyter Notebook - 單元格型別

Jupyter Notebook中的單元格分為三種類型:程式碼、Markdown原始

程式碼單元格

此單元格中的內容被視為當前核心程式語言中的語句。預設核心是Python。因此,我們可以在程式碼單元格中編寫Python語句。執行此類單元格時,其結果將顯示在輸出單元格中。輸出可以是文字、影像、matplotlib繪圖或HTML表格。程式碼單元格具有富文字功能。

Markdown單元格

這些單元格包含使用Markdown語言格式化的文字。所有型別的格式化功能都可用,例如使文字加粗和斜體、顯示有序或無序列表、呈現表格內容等。Markdown單元格特別有用,可以為Notebook的計算過程提供文件。

原始單元格

原始單元格中的內容不會由Notebook核心進行評估。透過nbconvert傳遞時,它們將按需呈現。如果您在原始單元格中鍵入LatEx,則應用nbconvert後將進行呈現。

Raw Cells

Jupyter Notebook - 編輯

雖然選單欄和工具欄允許您對Notebook執行各種操作,但最好能夠使用鍵盤快捷鍵快速執行這些操作。

Jupyter Notebooks有兩種不同的鍵盤輸入模式:

  • 命令模式 − 將鍵盤繫結到Notebook級別的操作。以灰色單元格邊框和藍色左邊緣為標誌。

  • 編輯模式 − 當您在單元格中鍵入時。以綠色單元格邊框為標誌。

命令模式(按Esc啟用)

F

查詢和替換

1

將單元格更改為標題1

Ctrl-Shift-F

開啟命令面板

2

將單元格更改為標題2

Ctrl-Shift-P

開啟命令面板

3

將單元格更改為標題3

Enter

進入編輯模式

4

將單元格更改為標題4

P

開啟命令面板

5

將單元格更改為標題5

Shift-Enter

執行單元格,選擇下一單元格

6

將單元格更改為標題6

Ctrl-Enter

執行選定的單元格

A

在上面插入單元格

Alt-Enter

執行單元格並在下方插入

B

在下面插入單元格

Y

將單元格更改為程式碼

X

剪下選定的單元格

M

將單元格更改為Markdown

C

複製選定的單元格

R

將單元格更改為原始

V

在下方貼上單元格

K

選擇上面的單元格

Z

撤消單元格刪除

Up

選擇上面的單元格

D,D

刪除選定的單元格

Down

選擇下面的單元格

Shift-M

合併選定的單元格,或者如果只有一個單元格被選中,則合併當前單元格和下面的單元格

J

選擇下面的單元格

Shift-V

在上方貼上單元格

Shift-K

擴充套件上面選定的單元格

L

切換行號

Shift-Up

擴充套件上面選定的單元格

O

切換選定單元格的輸出

Shift-Down

擴充套件下面選定的單元格

Shift-O

切換選定單元格的輸出滾動

Shift-J

擴充套件下面選定的單元格

I,I

中斷核心

Ctrl-S

儲存並檢查點

0,0

重啟核心(帶對話方塊)

S

儲存並檢查點

Esc

關閉分頁器

Shift-L

切換所有單元格的行號,並持久儲存設定

Q

關閉分頁器

Shift-Space

向上滾動筆記本

Space

向下滾動筆記本

編輯模式(按 Enter 鍵啟用)

Tab

程式碼補全或縮排

Ctrl-Home

跳轉到單元格開頭

Shift-Tab

工具提示

Ctrl-Up

跳轉到單元格開頭

Ctrl-]

縮排

Ctrl-End

跳轉到單元格結尾

Ctrl-[

取消縮排

Ctrl-Down

跳轉到單元格結尾

Ctrl-A

全選

Ctrl-Left

向左移動一個單詞

Ctrl-Z

撤銷

Ctrl-Right

向右移動一個單詞

Ctrl-/

註釋

Ctrl-M

進入命令模式

Ctrl-D

刪除整行

Ctrl-Shift-F

開啟命令面板

Ctrl-U

撤銷選擇

Ctrl-Shift-P

開啟命令面板

Insert

切換覆蓋標誌

Esc

進入命令模式

Ctrl-Backspace

刪除之前的單詞

Ctrl-Y

重做

Ctrl-Delete

刪除之後的單詞

Alt-U

重做選擇

Shift-Enter

執行單元格,選擇下一單元格

Ctrl-Shift-Minus

在游標處分割單元格

Ctrl-Enter

執行選定的單元格

Down

游標向下移動

Alt-Enter

執行單元格並在下方插入

Up

游標向上移動

Ctrl-S

儲存並檢查點

Jupyter Notebook - Markdown 單元格

Markdown單元格顯示可以使用Markdown語言格式化的文字。為了輸入筆記本伺服器不應將其視為程式碼的文字,必須首先將其轉換為Markdown單元格,方法是從單元格選單或在命令模式下使用鍵盤快捷鍵M。單元格之前的In[]提示符將消失。

標題單元格

Markdown單元格可以顯示6種大小的標題文字,類似於HTML標題。在Markdown單元格中,以#符號開頭文字。使用與所需標題級別對應的#符號數量。這意味著單個#將呈現最大的標題行,而六個#符號將呈現最小字型大小的標題。當您從單元格選單或工具欄的執行按鈕執行單元格時,將進行呈現。

以下螢幕截圖顯示了編輯模式下具有三個不同級別標題的Markdown單元格。

 Markdown Cells Three Levels

執行單元格後,輸出如下:

Markdown Cells Output

請注意,Jupyter Notebook Markdown不支援所見即所得功能。格式化的效果只有在執行Markdown單元格後才會呈現。

有序列表

要呈現HTML的<ol>標籤所做的編號列表,列表中的第一項應編號為1。後續專案可以賦予任何編號。在執行Markdown單元格時,它將按順序呈現。要顯示縮排列表,請按Tab鍵,並在每個子列表中的第一項前面加上1。

如果您為Markdown提供以下資料:

Ordered Lists

它將顯示以下列表:

Ordered List Output

無序列表

如果列表項以–符號開頭,則列表中的每一項都將顯示一個實心圓圈;如果列表以*符號開頭,則將顯示一個實心方塊符號。以下示例說明了此功能:

Bullet Lists

呈現的Markdown顯示如下:

Bullet Lists Output

超連結

以http或https開頭的Markdown文字會自動呈現超連結。要將連結附加到文字,請將文字放在方括號[]中,並將連結放在括號()中,也可以包含懸停文字。以下螢幕截圖將對此進行解釋。

Hyperlink Including

呈現的Markdown顯示如下:

Hyperlink Included

粗體和斜體

要將文字顯示為粗體,請將其放在兩個下劃線或兩個星號之間。要顯示為斜體,請將其放在單個下劃線或單個星號之間。

Applying Bold and Italics

結果如下所示:

Bold and Italics Output

影像

要在Markdown單元格中顯示影像,請從“編輯”選單中選擇“插入影像”選項,然後瀏覽到所需的影像檔案。Markdown單元格將顯示其語法如下:

Logo Attachment

影像將在筆記本中呈現如下所示:

Jupyter Logo

表格

在Markdown單元格中,可以使用|(管道符號)和–(破折號)來構造表格,以標記列和行。請注意,鍵入時符號不需要完全對齊。它只需要佔據列邊框和行邊框各自的位置即可。筆記本將根據內容自動調整大小。表格的構造如下所示:

Table Construction

輸出表格將呈現如下所示:

Table Output

Jupyter Notebook - 單元格魔法函式

在本章中,讓我們瞭解單元格魔法函式及其功能。

%%html

此單元格魔法函式將程式碼單元格的內容呈現為html指令碼。

Html Script

%%js 或 %%javascript

您可以使用此單元格魔法命令在Jupyter Notebook單元格中嵌入javascript程式碼。

Embedding JavaScript code

JavaScript Code Output

%%writefile

使用此命令將程式碼單元格的內容寫入檔案。

Write File

Jupyter Notebook - 繪圖

Jupyter Notebook的IPython核心能夠顯示輸入單元格中程式碼的繪圖。它與matplotlib庫無縫協同工作。使用%matplotlib魔法函式的內聯選項即使沒有呼叫繪圖物件的show()函式,也會在單元格外部呈現繪圖。show()函式會導致圖形在in[]單元格下方顯示,而沒有帶編號的out[]。

Matplotlib Library

現在,在末尾新增plt.show()並再次執行單元格以檢視區別。

請注意,%matplotlib notebook 魔法函式會呈現互動式繪圖。

在圖形下方,您可以找到一個工具欄,用於切換檢視、平移、縮放和下載選項。

Matplotlib Library Toolbar

重要的是,如果您修改繪圖下方的資料,顯示將動態更改,而無需繪製另一個繪圖。

在上面的示例中,更改下方單元格中x和y的資料集,然後再次繪製圖形,上面的圖形將動態重新整理。

Modify Data Underneath

Jupyter - 轉換筆記本

Jupyter筆記本副檔名為.ipynb。筆記本由筆記本應用程式在Web瀏覽器中呈現。可以使用檔案選單中的“另存為”選項將其匯出為各種檔案格式。Jupyter還具有以nbconvert選項形式的命令列介面。預設情況下,nbconvert將筆記本匯出為HTML格式。您可以使用以下命令執行此操作:

jupyter nbconvert mynotebook.ipynb

這會將mynotebook.ipynb轉換為mynotebook.html。其他匯出格式由`--to`子句指定。

請注意,其他選項包括['asciidoc', 'custom', 'html', 'latex', 'markdown', 'notebook', 'pdf', 'python', 'rst', 'script', 'slides']

HTML包括“basic”和“full”模板。您可以在命令列中指定如下:

jupyter nbconvert --to html --template basic mynotebook.ipynb

LaTex是一種文件準備格式,尤其用於科學排版。Jupyter包括“base”、“article”和“report”模板。

jupyter nbconvert --to latex –template report mynotebook.ipynb

要透過latex生成PDF,請使用以下命令:

jupyter nbconvert mynotebook.ipynb --to pdf

筆記本可以匯出為HTML幻燈片。轉換在後臺使用Reveal.js。要在HTTP伺服器上提供幻燈片,請在命令列中新增--postserve。要製作不需要網際網路連線的幻燈片,只需將Reveal.js庫放在與your_talk.slides.html位於同一目錄中即可。

jupyter nbconvert myslides.ipynb --to slides --post serve

markdown選項將筆記本轉換為簡單的markdown輸出。Markdown單元格不受影響,程式碼單元格縮排4個空格。

--to markdown

您可以使用rst選項將筆記本轉換為基本的reStructuredText輸出。它作為將筆記本嵌入Sphinx文件的起點非常有用。

--to rst

這是從筆記本中獲取Python(或其他語言,取決於核心)指令碼的最簡單方法。

--to script

Jupyter Notebook - IPyWidgets

IPyWidgets是用於Jupyter Notebook的HTML互動式小部件的Python庫。庫中的每個UI元素都可以響應事件並呼叫指定的事件處理程式函式。它們增強了Jupyter Notebook應用程式的互動功能。

為了在筆記本中包含小部件,我們必須匯入以下模組,如下所示:

from ipywidgets import widgets

這裡解釋了一些基本IPyWidgets:

文字輸入

widgets.text()函式在筆記本中呈現小部件。它類似於HTML中的文字框表單元素。此小部件的物件具有on_submit()方法,該方法偵聽文字欄位的活動,並可以呼叫作為引數傳遞給它的事件處理程式。

按鈕

此小部件類似於HTML按鈕。單擊它時,on_click()方法將註冊事件,該方法將呼叫單擊事件處理程式。

IntSlider

一個滑塊控制元件,顯示遞增的整數值。還有一個FloatSlider和IntRangeSlider(在範圍內更改整數)。

標籤

此小部件用於在筆記本中顯示不可編輯的文字。

display()

此函式來自ipywidgets模組,用於在筆記本的輸入單元格中呈現小部件物件。

Interact

此函式根據傳遞給它的資料引數的型別自動呈現小部件。此函式的第一個引數是事件處理程式,第二個引數是傳遞給事件處理程式本身的值。

以下示例顯示三個標籤小部件、兩個文字小部件和一個帶有“add”標題的按鈕。單擊按鈕後,兩個文字輸入欄位中數字的總和將顯示在最下面的標籤上。

Form Creation

Jupyter QtConsole - 入門

在本章中,讓我們瞭解如何開始使用QtConsole。本章將概述此軟體並解釋其安裝步驟。

概述

Qt控制檯是一個類似於IPython終端的GUI應用程式。但是,它提供了一些文字型IPython終端中沒有的增強功能。增強功能包括內聯圖形、帶語法高亮的多分支編輯、圖形呼叫提示等。Qt控制檯可以使用任何Jupyter核心,預設核心為IPython核心。

安裝

Jupyter QtConsole是Jupyter專案的組成部分。Anaconda發行版中已經包含了QTconsole應用程式。要單獨安裝它,請使用以下pip命令:

pip3 install qtconsole

您也可以為此目的使用conda命令:

conda install qtconsole

您可以從Anaconda Navigator啟動Jupyter控制檯。要從命令列啟動它,應使用以下命令,無論是從Windows命令提示符還是Anaconda提示符:

jupyter qtonsole

您將獲得一個類似於IPython終端的終端,帶有一個In[]提示符。您現在可以執行任何Python表示式,就像我們在IPython終端或Jupyter Notebook中所做的一樣。

Jupyter QtConsole

Jupyter QtConsole - 多行編輯

多行編輯是IPython終端中沒有的功能之一。要在單個輸入單元格中輸入多個語句,請在第一行之後按ctrl+enter。之後,只需按enter鍵即可在同一單元格中新增新行。要停止輸入新行並執行單元格,請在最後再按一次enter鍵。單元格將執行,輸出將顯示在下一個out[]單元格中。

Multiline Editing

Jupyter QtConsole - 內聯圖形

QtConsole提供的另一個重要增強功能是能夠顯示內聯圖形,尤其是繪圖。此功能與Matplotlib以及其他繪相簿都能很好地配合使用。

Inline Graphics

Jupyter QtConsole - 儲存為HTML

將QtConsole輸出儲存為HTML檔案的選項在“檔案”選單中可用。您可以選擇建立包含內聯影像或將繪圖圖形作為外部png檔案建立檔案(名為qt_files)。

QtConsole output as HTML

Jupyter QtConsole - 多個控制檯

您可以在Jupyter控制檯應用程式中開啟多個選項卡。“檔案”選單中提供了三個選項用於此目的。

  • 使用新核心新建選項卡 - 您可以使用此檔案選單載入新的核心。

  • 使用現有核心新建選項卡 - 使用此選項,您可以從IPython核心之外的其他核心中進行選擇。

  • 使用相同核心新建選項卡 - 這將建立載入到特定選項卡上的核心的從屬項。因此,在主選項卡上初始化的物件將在從屬項中訪問,反之亦然。

Multiple Consoles

連線到 Jupyter Notebook

Jupyter Notebook 提供了一個 %qtconsole 魔法命令。此命令會呼叫 QtConsole 作為 Notebook 前端的一個從屬終端。因此,Notebook 和 QtConsole 終端之間可以共享資料。

Connecting Jupyter Notebook

您可以看到 Notebook 中的變數可以在 **qtconsole** 視窗中訪問。同樣,QtConsole 中的新變數也可以在 Notebook 中使用。

請注意,這兩個程式的輸入和輸出單元是遞增編號的。

使用 github 和 nbviewer

共享 Jupyter Notebook – 使用 GitHub 和 nbviewer

GitHub 倉庫中具有 **.ipynb** 副檔名的 Jupyter Notebook 檔案在開啟時將被渲染為靜態 HTML 檔案。Notebook 的互動式功能(例如自定義 JavaScript 繪圖)在 GitHub 倉庫中將無法使用。

要使用 GitHub 共享 Notebook 檔案,請登入 https://github.com 並建立一個公共倉庫。然後使用“上傳檔案”按鈕上傳您的檔案,如下所示:

Github

這將為您提供提交對倉庫所做更改的選項。然後,倉庫將顯示上傳的檔案,如下所示:

Updated Repository

單擊上傳的檔案以在 GitHub 檢視器中檢視。您可以與他人共享突出顯示的 URL。

Inside Github viewer

另一種線上檢視 Notebook 檔案的方法是使用 Jupyter 專案的 nbviewer 實用程式。開啟 https://nbviewer.jupyter.org/,並將您倉庫中檔案的 URL 放入文字欄位中,如圖所示。按“Go”按鈕檢視 Notebook。

nbviewer

這兩種方法都將 Notebook 檔案顯示為靜態 html。要能夠執行 Notebook 中的程式碼,請使用 Jupyter 專案的 Binder 應用程式開啟它。

Binder Application

在 nbviewer 視窗中,您將看到“在 Binder 上執行”按鈕。單擊它,您將看到 Notebook 檔案的開啟方式與您從本地機器上的 Notebook 伺服器本地儀表板開啟它完全相同。您可以執行新增/編輯單元格、執行單元格等所有操作。

Execute On Binder

JupyterLab - 概述

Jupyter 專案將 JupyterLab 描述為 Jupyter 生態系統下所有產品的下一代基於 Web 的使用者介面。它使您可以無縫地以可擴充套件的方式使用 Notebook、編輯器和終端。

下面討論 JupyterLab 的一些重要功能:

  • 程式碼控制檯充當互動執行程式碼的備忘錄。它完全支援豐富的輸出,並且可以連結到 Notebook 核心以記錄 Notebook 活動。

  • 任何文字檔案(Markdown、Python、R、LaTeX 等)都可以在任何 Jupyter 核心中互動執行。

  • Notebook 單元格輸出可以顯示在其自己的選項卡中,也可以與 Notebook 一起顯示,從而可以建立由核心支援的具有互動式控制元件的簡單儀表板。

  • 文件的即時編輯會反映在其他檢視器(例如編輯器或控制檯)中。可以即時預覽 Markdown、分隔值或 Vega/Vega-Lite 文件。

JupyterLab 可以處理多種檔案格式(影像、CSV、JSON、Markdown、PDF 等)。它還以這些格式顯示豐富的輸出。JupyterLab 提供可自定義的鍵盤快捷鍵,並使用許多知名文字編輯器的鍵對映。

JupyterLab - 安裝和入門

在安裝之前,您可以嘗試線上使用 JupyterLab 的功能。訪問 https://jupyter.tw/try 並選擇“試用 JupyterLab”選項。

JupyterLab

啟動器選項卡顯示當前可用的核心和控制檯。您可以基於其中任何一個啟動一個新的基於 Notebook/終端的程式。左列還包含檔案瀏覽器、正在執行的核心和選項卡以及設定檢視的選項卡。

JupyterLab 通常會隨 Anaconda 發行版自動安裝。但是,也可以使用以下 conda 命令單獨安裝:

conda install -c conda-forge jupyterlab

您也可以為此目的使用 pip 命令:

pip3 install jupyterlab

啟動 JupyterLab 應用程式最方便的方法是(如果已安裝)從 Anaconda Navigator 啟動。

Anaconda Navigator

或者,從 Windows/Linux 命令終端或 Anaconda 提示符使用此命令從命令列啟動它:

jupyter lab

無論哪種方式,JupyterLab 應用程式的啟動螢幕如下所示:

JupyterLab launch screen

JupyterLab - 介面

要啟動新的 Notebook,請單擊所需的核心。在上面的螢幕截圖中,可以看到一個核心,即 Python3 核心。單擊它以啟動 Python Notebook。注意,其功能與我們在本教程中學習的功能類似。

Start a Python Notebook

選單欄

選單欄位於視窗頂部。您可以在其中找到的預設選單是:

  • **檔案** – 與檔案和目錄相關的操作。

  • **編輯** – 與編輯文件和其他活動相關的操作。

  • **檢視** – 更改 JupyterLab 外觀的操作。

  • **執行** – 用於在不同的活動(例如 Notebook 和程式碼控制檯)中執行程式碼的操作。

  • **核心** – 用於管理核心的操作,核心是用於執行程式碼的單獨程序。

  • **選項卡** – 停靠面板中開啟的文件和活動的列表。

  • **設定** – 常用設定和高階設定編輯器。

  • **幫助** – JupyterLab 和核心幫助連結的列表。

左側邊欄顯示用於啟動新的啟動器、新增資料夾、上傳檔案和重新整理檔案列表的按鈕。右側窗格是主要的的工作區域,其中 Notebook、控制檯和終端以選項卡檢視顯示。

要啟動新的控制檯,請單擊左側邊欄中的 + 符號以開啟新的啟動器,然後單擊控制檯選項。控制檯將在右側窗格的新選項卡中開啟。

Starting New Console

請注意,輸入單元格位於底部,但是當它執行時,單元格及其相應的輸出單元格將出現在控制檯選項卡的上部。

啟動器還允許您開啟文字編輯器和終端,在其中可以呼叫 IPython shell。

IPython shell Text Editor

JupyterLab - 安裝 R 核心

Jupyter 專案現在支援程式設計環境的核心。我們現在將瞭解如何在 Anaconda 發行版中安裝 R 核心。

在 Anaconda 提示符視窗中輸入以下命令:

conda install -c r r-essentials

現在,從啟動器選項卡中,選擇 R 核心以啟動新的 Notebook。

Launcher Tab R kernel

以下是具有 R 核心的 Jupyter Notebook 的螢幕截圖:

Jupyter notebook having R kernel
廣告