Jupyter notebook快速入門教程(推薦)
本文主要介紹了Jupyter notebook快速入門教程,分享給大家,具體如下:
本篇將給大家介紹一款超級(jí)好用的工具:Jupyter notebook
。
為什么要介紹這款工具呢?
如果你想使用Python
學(xué)習(xí)數(shù)據(jù)分析或數(shù)據(jù)挖掘,那么它應(yīng)該是你第一個(gè)應(yīng)該知道并會(huì)使用的工具,它很容易上手,用起來非常方便,是個(gè)對(duì)新手非常友好的工具。而事實(shí)也證明它的確很好用,在數(shù)據(jù)挖掘平臺(tái) Kaggle
上,使用 Python 的數(shù)據(jù)愛好者絕大多數(shù)使用 jupyter notebook
來實(shí)現(xiàn)分析和建模的過程,因此,如果你想學(xué)習(xí)機(jī)器學(xué)習(xí),數(shù)據(jù)挖掘,那么這款軟件你真的應(yīng)該了解一下。
本篇博主總結(jié)了關(guān)于Jupyter notebook
的一些關(guān)鍵點(diǎn),幫助大家快速了解并使用它。
什么是Jupyter notebook?
Jupyter notebook
是一種 Web 應(yīng)用,它能讓用戶將說明文本、數(shù)學(xué)方程、代碼和可視化內(nèi)容全部組合到一個(gè)易于共享的文檔中,非常方便研究和教學(xué)。在原始的 Python shell 與 IPython 中,可視化在單獨(dú)的窗口中進(jìn)行,而文字資料以及各種函數(shù)和類腳本包含在獨(dú)立的文檔中。但是,notebook 能將這一切集中到一處,讓用戶一目了然。
Jupyter notebook
特別適合做數(shù)據(jù)處理,其用途可以包括數(shù)據(jù)清理和探索、可視化、機(jī)器學(xué)習(xí)和大數(shù)據(jù)分析。
Jupyter notebook是如何工作的?
Jupyter notebook
源于 Fernando Perez 發(fā)起的 IPython
項(xiàng)目。IPython 是一種交互式 shell,與普通的 Python shell 相似,但具有一些更高級(jí)的功能,例如語法高亮顯示和代碼補(bǔ)全,還有一些 magic 操作,十分方便。Jupyter notebook 將 IPython 做成了一種 Web 應(yīng)用,我們可以通過它的基本架構(gòu)更清楚的了解:
可以看到,這里的核心是 notebook 的服務(wù)器。用戶通過瀏覽器連接到該服務(wù)器,而 notebook 呈現(xiàn)為 Web 應(yīng)用。用戶在 Web 應(yīng)用中編寫的代碼通過該服務(wù)器發(fā)送給內(nèi)核,內(nèi)核運(yùn)行代碼,并將結(jié)果發(fā)送回該服務(wù)器。然后,任何輸出都會(huì)返回到瀏覽器中。保存 notebook 時(shí),它將作為 JSON
文件(文件擴(kuò)展名為 .ipynb
)寫入到該服務(wù)器中。
此架構(gòu)的一個(gè)優(yōu)點(diǎn)是,內(nèi)核無需運(yùn)行 Python。由于 notebook 和內(nèi)核分開,因此可以在兩者之間發(fā)送任何語言的代碼。例如,早期的兩個(gè)非 Python 內(nèi)核分別是 R 語言和 Julia 語言。使用 R 內(nèi)核時(shí),用 R 編寫的代碼將發(fā)送給執(zhí)行該代碼的 R 內(nèi)核,這與在 Python 內(nèi)核上運(yùn)行 Python 代碼完全一樣。IPython notebook 已被改名,因?yàn)?notebook 變得與編程語言無關(guān)。新的名稱 Jupyter 由Julia
、Python
和 R
組合而成。
安裝Jupyter notebook
最簡單的方法就是使用 Anaconda
,其發(fā)行版附帶了 Jupyter notebook。
在 conda 環(huán)境下安裝 Jupyter notebook 可以使用 conda install jupyter notebook
。當(dāng)然,也可以通過 pip
來安裝 pip install jupyter notebook
。
啟動(dòng) notebook 服務(wù)器
啟動(dòng) notebook 很簡單,只需要在終端環(huán)境下輸入 jupyter notebook
, 服務(wù)器就會(huì)在當(dāng)前操作的目錄下啟動(dòng)。當(dāng)然你可以建立一些專門用來運(yùn)行 notebook 的文件夾,尤其對(duì)于不同的 Python版本以及一些項(xiàng)目(后面會(huì)提到)。
啟動(dòng)后,默認(rèn)的 notebook 服務(wù)器的運(yùn)行地址是 http://localhost:8888
。只要 notebook 服務(wù)器仍在運(yùn)行,你隨時(shí)都能通過在瀏覽器中輸入 http://localhost:8888
返回到 web 頁面中。如下圖:
可以通過點(diǎn)擊 “New” 創(chuàng)建新的 notebook、文本文件、文件夾或終端。
“Notebook”下的列表顯示了已安裝的內(nèi)核。這個(gè)示例中安裝的版本是 Python 2.7
,因此列出了 Python 2.7 內(nèi)核。當(dāng)然,如果你同時(shí)安裝了其它內(nèi)核比如 Python 3
,那么它也會(huì)在列表中同時(shí)出現(xiàn)。這又是 notebook 的另一大好處,就是可以同時(shí)管理多個(gè)版本,當(dāng)你同時(shí)需要 Python 2 和 Python 3,或者 Scala 2.10 和 2.11 的內(nèi)核的時(shí)候,是十分方便的。
而對(duì)于關(guān)閉 notebook,可以通過選中文件,點(diǎn)擊 "shutdown" 來操作操作,但請(qǐng)確認(rèn)先保存:
通過在終端中按兩次 Ctrl + C,可以關(guān)閉整個(gè)服務(wù)器。
notebook 界面
notebook 界面由基本的單元格組成,每個(gè)單元格在可編輯狀態(tài)下可以任意的輸入代碼和注釋說明(markdown)。默認(rèn)的是代碼格式,也就是下圖中工具欄列表所示的 code
。
單元格 綠色 代表內(nèi)容可編輯狀態(tài)(比如輸入代碼),藍(lán)色 代表單元格可操作狀態(tài)(比如刪除單元格,必須回到藍(lán)色),而藍(lán)色與綠色之間可以用Esc
和 Enter
來切換。
Kernel
的小圓圈在空閑狀態(tài)下是空的,而當(dāng)運(yùn)行代碼時(shí),會(huì)被填滿,所以可以通過觀察 Kernel
的狀態(tài)觀察程序是否運(yùn)行完成。
代碼單元格
notebook 中的大部分工作均在代碼單元格中完成。編寫和執(zhí)行代碼都在這里,就像我們平時(shí)在 IDE 軟件里敲代碼一樣,給變量賦值、定義函數(shù)和類、導(dǎo)入包等。執(zhí)行單元格代碼可以通過 Shift + Enter
來完成。下面是一個(gè)示例:
Markdown 單元格
Markdown
是格式化語法,可以加入鏈接、將文本樣式設(shè)為粗體或斜體和設(shè)置代碼格式。像代碼單元格一樣,按 Shift + Enter
或 Ctrl + Enter
可運(yùn)行 Markdown 單元格,這會(huì)將 Markdown 呈現(xiàn)為格式化文本。
Markdown
在這里就不詳細(xì)介紹了,如果不清楚可以查看官網(wǎng):http://www.markdown.cn/。下面是一個(gè) Markdown
的示例:
快捷鍵
notebook 自帶一組快捷鍵,能讓你快速使用鍵盤與單元格交互,而無需使用鼠標(biāo)和工具欄。熟悉這些快捷鍵需要花費(fèi)一點(diǎn)時(shí)間,但如果能熟練掌握,將大大加快你在 notebook 中的工作速度。所有的快捷鍵就不在這里展示了,因?yàn)檫@些快捷鍵可以通過單元格 藍(lán)色 狀態(tài)下按 "h"
來查看:
Magic 關(guān)鍵字
Magic關(guān)鍵字
是 IPython 的一些高級(jí)用法,可以運(yùn)行特殊的命令,然后控制 notebook。例如,在 notebook 中可以使用%matplotlib
將 matplotlib 設(shè)置為以交互方式工作。
Magic 命令的前面帶有一個(gè)或兩個(gè)百分號(hào)(%
或 %%
),分別代表行 Magic 命令和單元格 Magic 命令。行 Magic 命令僅應(yīng)用于編寫 Magic 命令時(shí)所在的行,而單元格 Magic 命令應(yīng)用于整個(gè)單元格。
如果要測(cè)算整個(gè)單元格的運(yùn)行時(shí)間,請(qǐng)使用 %%timeit
,如下所示:
如果要在 notebook 中嵌入可視化內(nèi)容,可以說使用 %matplotlib inline
,如下所示:
默認(rèn)情況下,圖形呈現(xiàn)在各自的窗口中。但是,你可以通過命令傳遞參數(shù),以選擇特定的“后端”(呈現(xiàn)圖像的軟件)。要直接在 notebook 中呈現(xiàn)圖形,應(yīng)將通過命令 %matplotlib inline
內(nèi)聯(lián)后端一起使用。
提示:在分辨率較高的屏幕(例如 Retina 顯示屏)上,notebook 中的默認(rèn)圖像可能會(huì)顯得模糊??梢栽?%matplotlib inline 之后使用%config InlineBackend.figure_format = 'retina'
來呈現(xiàn)分辨率較高的圖像。
當(dāng)然,還有很多 Magic 關(guān)鍵字的使用,這里只列出了兩個(gè)常用的介紹給大家。更多內(nèi)容請(qǐng)參考:http://ipython.readthedocs.io/en/stable/interactive/magics.html
總結(jié)
通過本篇,相信你已經(jīng)了解并知道如何使用 Jupyter notebook
了,但是還需要一些實(shí)際的操作才能更熟練的使用它,包括一些快捷鍵的使用。
https://jupyter.readthedocs.io/en/latest/content-quickstart.html
到此這篇關(guān)于Jupyter notebook快速入門教程(推薦)的文章就介紹到這了,更多相關(guān)Jupyter notebook 入門內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python中zip和unzip數(shù)據(jù)的方法
這篇文章主要介紹了python中zip和unzip數(shù)據(jù)的方法,實(shí)例分析了Python中zlib模塊的相關(guān)使用技巧,需要的朋友可以參考下2015-05-05一文帶你掌握Python內(nèi)置reversed函數(shù)的使用
Python作為一門強(qiáng)大的編程語言,提供了許多內(nèi)置函數(shù)來處理各種數(shù)據(jù)結(jié)構(gòu)和對(duì)象,本文將詳細(xì)探討reversed函數(shù)的用法、示例代碼以及實(shí)際應(yīng)用場景,需要的可以參考下2024-01-01Python使用turtle庫繪制小豬佩奇(實(shí)例代碼)
這篇文章主要介紹了Python使用turtle庫繪制小豬佩奇,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-01-01關(guān)于Keras模型可視化教程及關(guān)鍵問題的解決
今天小編就為大家分享一篇關(guān)于Keras模型可視化教程及關(guān)鍵問題的解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-01-01Python 標(biāo)準(zhǔn)庫zipfile將文件夾加入壓縮包的操作方法
Python zipfile 庫可用于壓縮/解壓 zip 文件. 本文介紹一下如何創(chuàng)建壓縮包,對(duì)Python zipfile壓縮包相關(guān)知識(shí)感興趣的朋友一起看看吧2021-09-09Python中輸出ASCII大文字、藝術(shù)字、字符字小技巧
這篇文章主要介紹了Python中輸出ASCII大文字、藝術(shù)字、字符字小技巧,本文首先給出了ASCII大文字、藝術(shù)字、字符字的圖片效果,然后給出了Python中的實(shí)現(xiàn)方法,需要的朋友可以參考下2015-04-04