Jupyter Notebook是什么
Jupyter Notebook是ipython Notebook 的升級(jí)菊匿。Jupyter能夠?qū)?shí)時(shí)代碼付呕,公式,可視化圖表以Cell的方式組織在一起跌捆,形成一個(gè)對(duì)代碼友好的筆記本徽职。Jupyter同時(shí)支持Markdown語法和LaTeX語法,可以有效輸出富文本方式的PDF文檔佩厚。
界面
默認(rèn)情況下姆钉,Jupyter Notebook 使用Python內(nèi)核,這就是為什么它原名 IPython Notebook抄瓦。Jupyter notebook是Jupyter項(xiàng)目的產(chǎn)物——Jupyter這個(gè)名字是它要服務(wù)的三種語言的縮寫:Julia潮瓶,PYThon和R,這個(gè)名字與“木星(jupiter)”諧音钙姊。
1. 快捷鍵
高手們都知道毯辅,快捷鍵可以節(jié)省很多時(shí)間。Jupyter在頂部菜單提供了一個(gè)快捷鍵列表:Help > Keyboard Shortcuts煞额,
或者在命令模式下按下H(稍后再說) 思恐。每次更新Jupyter的時(shí)候沾谜,一定要看看這個(gè)列表,因?yàn)椴粩嗟赜行碌目旖萱I加進(jìn)來胀莹。另外一個(gè)方法是使用Cmd + Shift + P(? Linux 和 Windows下Ctrl + Shift + P亦可)調(diào)出命令面板基跑。這個(gè)對(duì)話框可以讓你通過名稱來運(yùn)行任何命令——當(dāng)你不知道某個(gè)操作的快捷鍵,或者那個(gè)操作沒有快捷鍵的時(shí)候尤其有用描焰。這個(gè)功能與蘋果電腦上的Spotlight搜索很像涩僻,一旦開始使用,你必定會(huì)欲罷不能栈顷。
命令面板
我的最愛幾個(gè):
Esc將進(jìn)入命令模式逆日。
在命令模式下:
A在當(dāng)前單元格上方插入一個(gè)新單元格,B在下面插入一個(gè)新單元格萄凤。
M將當(dāng)前單元格更改為Markdown室抽,Y將其更改為代碼
D + D(按鍵兩次)刪除當(dāng)前單元格
Enter將使您從命令模式返回到給定單元格的編輯模式。
Shift + Tab將顯示您剛剛在代碼單元格中鍵入的對(duì)象的Docstring(文檔) 靡努,可以繼續(xù)按此快捷方式循環(huán)瀏覽幾種文檔模式坪圾。
Ctrl + Shift + -將會(huì)將當(dāng)前單元格分割為兩個(gè)單元格。
Esc + F在代碼中查找惑朦、替換兽泄,忽略輸出。
Esc + O在單元格l和輸出結(jié)果間切換漾月。
選擇多個(gè)單元格:
Shift + J或Shift + Down選擇下一個(gè)單元格病梢。
Shift + K或Shift + Up選擇上一個(gè)單元格。
一旦選定cell梁肿,可以批量刪除/拷貝/剪切/粘貼/運(yùn)行蜓陌。當(dāng)你需要移動(dòng)notebook的一部分時(shí)這個(gè)很有用。
Shift + M合并單元格吩蔑。
合并單元格
2. 優(yōu)雅的變量顯示
眾所周知钮热,把變量名稱或沒有定義輸出結(jié)果的語句放在單元格的最后一行,無需print語句烛芬,Jupyter也會(huì)顯示變量值隧期。當(dāng)使用Pandas DataFrames時(shí)這一點(diǎn)尤其有用,因?yàn)檩敵鼋Y(jié)果為整齊的表格赘娄。
鮮為人知的是仆潮,你可以通過修改內(nèi)核選項(xiàng)ast_note_interactivity,使得Jupyter對(duì)獨(dú)占一行的所有變量或者語句都自動(dòng)顯示擅憔。
如果你想在各種情形下(Notebook和Console)Jupyter都同樣處理鸵闪,用下面的幾行簡(jiǎn)單的命令創(chuàng)建文件~/.ipython/profile_default/ipython_config.py即可實(shí)現(xiàn):
捕獲.PNG
3. 輕松鏈接到文檔
在Help菜單下檐晕,你可以找到常見庫的在線文檔鏈接暑诸,包括Numpy蚌讼,Pandas,Scipy和Matplotlib等个榕。
另外篡石,在庫、方法或變量的前面打上?西采,即可打開相關(guān)的幫助文檔凰萨。
4. 在notebook中繪制圖像
matplotlib(事實(shí)上的標(biāo)準(zhǔn)),用%matplotlib內(nèi)聯(lián)激活 - 這是一個(gè)DataquestMatplotlib教程械馆。
%matplotlib notebook提供交互性操作胖眷,但可能會(huì)有點(diǎn)慢,因?yàn)轫憫?yīng)是在服務(wù)器端完成的霹崎。
Seaborn建立于Matplotlib上珊搀,能夠創(chuàng)建更具有吸引力的圖像。只要通過導(dǎo)入Seaborn尾菇,你的matplotlib圖就會(huì)變得更漂亮境析,沒有任何代碼修改。
mpld3提供matplotlib代碼的替代性呈現(xiàn)(通過d3)派诬,雖然不完整劳淆,但很好。
bokeh生成可交互圖像的更好選擇默赂。
plot.py可以生成非常好的圖像沛鸵,可惜是付費(fèi)服務(wù)。
bokeh
5. IPython Magic命令
上面看到的%matplotlib inline是IPython Magic命令的一個(gè)例子缆八≮司剩基于IPython內(nèi)核,Jupyter可以訪問IPython內(nèi)核中的所有Magics耀里,從而使你的生活變得更加容易蜈缤!
建議瀏覽IPython Magic命令的文檔,毫無疑問冯挎,它對(duì)你會(huì)有所幫助底哥。
原文地址:https://www.dataquest.io/blog/jupyter-notebook-tips-tricks-shortcuts/
以上。
作者:Viljw
鏈接:http://www.reibang.com/p/68d56007aab4
來源:簡(jiǎn)書
著作權(quán)歸作者所有房官。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán)趾徽,非商業(yè)轉(zhuǎn)載請(qǐng)注明出處。