1 安裝 Jupyter Notebook
Jupyter Notebook 簡介
Jupyter Notebook 是一個開源的 Web 應用程序凤壁,可以用來創(chuàng)建和共享包含動態(tài)代碼破婆、方程式、可視化及解釋性文本的文檔邪乍。
其應用于包括:數(shù)據(jù)整理與轉換,數(shù)值模擬秤朗,統(tǒng)計建模丹莲,機器學習等等。
詳情可以訪問Jupyter官網(wǎng)
檢查 Python 環(huán)境
CentOS 7.2 中默認集成了 Python 2.7朗涩,可以通過下面命令檢查 Python 版本:
python --version
安裝 pip
pip 是一個 Python 包管理工具忽孽,我們使用 yum 命令來安裝該工具:
yum -y install python-pip
使用下面命令升級 pip 到最新版本:
pip install --upgrade pip
升級也許會比較慢,如果超時再執(zhí)行一遍
安裝相關依賴
安裝 Jupyter 過程中還需要其他一些依賴谢床,我們使用以下命令安裝他們:
yum -y groupinstall "Development Tools"
yum -y install python-devel
配置虛擬環(huán)境
安裝 virtualenv
我們將為 Jupyter 創(chuàng)建一個獨立的虛擬環(huán)境兄一,與系統(tǒng)自帶的 Python 隔離開來。為此识腿,先安裝 virtualenv 庫:
pip install virtualenv
創(chuàng)建虛擬環(huán)境
創(chuàng)建一個專門的虛擬環(huán)境出革,并直接激活進入該環(huán)境:
virtualenv venvsource
venv/bin/activate
使用 pip 安裝 Jupyter
我們使用 pip 命令安裝 Jupyter:
pip install jupyter
如果安裝慢的話,可以使用豆瓣源渡讼,使用方法
python的支持包最好用豆瓣源來下載骂束,不要問為什么耳璧,就是快
配置 Jupyter Notebook
建立項目目錄
我們先為 Jupyter 相關文件準備一個目錄:
mkdir /data/jupytercd /data/jupyter
再建立一個目錄作為 Jupyter 運行的根目錄:
mkdir /data/jupyter/root
準備密碼密文
由于我們將以需要密碼驗證的模式啟動 Jupyter,所以我們要預先生成所需的密碼對應的密文展箱。
生成密文
使用下面的命令旨枯,創(chuàng)建一個密文的密碼:
python -c "import IPython;print IPython.lib.passwd()"
執(zhí)行后需要輸入并確認密碼,然后程序會返回一個 'sha1:...'
的密文混驰,我們接下來將會用到它攀隔。
修改配置
生成配置文件
我們使用 --generate-config
來參數(shù)生成默認配置文件:
jupyter notebook --generate-config --allow-root
生成的配置文件在 /root/.jupyter/
目錄下,可以點此編輯配置栖榨。
修改配置
然后在配置文件最下方加入以下配置:
c.NotebookApp.allow_root = True
c.NotebookApp.open_browser = False
c.NotebookApp.port = 8888
c.NotebookApp.password = u'剛才生成的密文(sha:...)'
c.ContentsManager.root_dir = '/data/jupyter/root'
其中:
c.NotebookApp.password
請將上一步中密文填入此項昆汹,包括 sha: 部分,包括 sha: 部分,包括 sha: 部分!。
你也可以直接配置或使用 Nginx 將服務代理到 80 或 443 端口治泥。
啟動 Jupyter Notebook
直接啟動
使用以下指令啟動 Jupyter Notebook:
jupyter notebook
此時筹煮,訪問 http://你的ip:8888 即可進入 Jupyter 首頁。
創(chuàng)建 Notebook
進入【首頁】
首先需要輸入前面步驟中設置的密碼居夹。
然后點擊右側的【 new 】败潦,選擇 Python2 新建一個 notebook,這時跳轉至編輯界面准脂。
現(xiàn)在我們可以看到 /data/jupyter/root/ 目錄中出現(xiàn)了一個 Untitled.ipynb
文件劫扒,這就是我們剛剛新建的 Notebook 文件。我們建立的所有 Notebook
都將默認以該類型的文件格式保存狸膏。
后臺運行
直接以
jupyter notebook
命令啟動 Jupyter 的方式在連接斷開時將會中斷沟饥,所以我們需要讓 Jupyter 服務在后臺常駐。
先按下
Ctrl + C
并輸入 y
停止 Jupyter 服務湾戳,然后執(zhí)行以下命令:
nohup jupyter notebook > /data/jupyter/jupyter.log 2>&1 &
該命令將使得 Jupyter 在后臺運行贤旷,并將日志寫在
/data/jupyter/jupyter.log
文件中。
準備后續(xù)步驟的 Notebook
為了后面實驗中實驗室的步驟檢查器能夠更好的工作砾脑,此時我們使用以下命令預先創(chuàng)建幾份 ipynb 文件:
cd /data/jupyter/rootcp Untitled.ipynb first.ipynbcp Untitled.ipynb matplotlib.ipynbcp Untitled.ipynb tensorflow.ipynbrm -f Untitled.ipynb
使用 Jupyter Notebook
打開你的first.ipynb文件頁面
http://本機IP:8888/notebooks/first.ipynb
Jupyter Notebook 的編輯界面主要由 工具欄
和 內容編輯區(qū)
構成幼驶。
下方編輯區(qū),由 Cell
組成韧衣。每個 notebook 由多個 Cell
構成盅藻,每個 Cell
都可以有不同的用途。
Code Cell
新建的 notebook 中包含一個代碼 Cell(Code Cell)畅铭,以 [ ] 開頭氏淑,在該類型的 Cell 中,可以輸入任意代碼并執(zhí)行硕噩。如輸入:
1 + 1
然后按下 Shift + Enter 鍵假残, Cell 中代碼就會被執(zhí)行,光標也會移動至下個新 Cell 中榴徐。我們接著輸入:
print('Hello Jupyter')
再次按下 Shift + Enter 守问,可以看到這次沒有出現(xiàn) Out[..] 這樣的文字匀归。這是因為我們只打印出來了某些值,而沒有返回任何的值耗帕。
按下 Ctrl + S 保存穆端,等待步驟檢查器確認。
Heading Cell
新版本中已經(jīng)沒有獨立的 Heading Cell
仿便,現(xiàn)在標題被整合在 Markdown Cell
之中体啰。
如果我們想在頂部添加一個的標題。選中第一個 Cell嗽仪,然后點擊 Insert -> Insert Cell Above荒勇。
你會發(fā)現(xiàn),文檔頂部馬上就出現(xiàn)了一個新的 Cell闻坚。點擊在工具欄中 Cell 類型(默認為 Code)沽翔,將其變成 Markdown。接著在 Cell 中寫下:
My First Notebook
然后按下 Shift + Enter
鍵窿凤,便可以看到生成了一行一級標題仅偎。
與 Markdown 語法相同,使用多個#
將改變標題級別雳殊。
下一步
Markdown Cell
上一步中我們已經(jīng)嘗試了使用了 Markdown Cell
橘沥。在該 Cell 中,除標題外其他語法同樣支持夯秃。比如座咆,我們在一個新的 Cell 中插入以下文本:
| Name | Value |
|:----:|:-----:|
| A | 1 |
| B | 2 |
| C | 3 |
然后按下 Shift + Enter
,即可渲染出相應內容仓洼。
高級用法 - HTML
Markdown Cell
中同樣接受 HTML 代碼介陶。這樣,你就可以實現(xiàn)更加豐富的樣式及結構色建、添加圖片等等斤蔓。
例如,如果想在 notebook 中添加 Jupyter 的 logo镀岛,并且添加 2px 的黑色邊框,放置在單元格左側友驮,可以這樣編寫:
然后按下 Shift + Enter
漂羊,即可渲染出圖片。
高級用法 - LaTex
Markdown Cell 還支持 LaTex 語法卸留。在 Cell 中插入以下文本:
$$int_0^{+infty} x^2 dx$$
同樣按下 Shift + Enter
走越,即可渲染出公式。