Jupyter Notebook 是一種基於網絡的交互式工具,它是機器學習和數據科學經常使用的工具。它可以被用於快速測試,作為報告工具,甚至作為複雜的學習材料在在線課程中使用。數據科學愛好者 Shadab Hussain 分享了 Jupyter Notebook 使用的一些小技巧。
所以在這個博客裡,我要列出一些關於它的快捷方式,魔術命令和 nbextensions。
快捷方式
按 ctrl+shift+p 或單擊菜單欄中的小鍵盤圖標以獲取命令調色板列表
在 command 和 edit 模式中都可以用的快捷方式:
Shift + Enter 運行當前選中的 cellCtrl+Enter 運行所選 cellAlt+Enter 運行當前單元格,在下面插入Ctrl+S 保存和檢查處於 edit 模式時的快捷方式:
按 Esc 鍵進入 command 模式Tab 完成或縮進Shift + Tab 選項卡工具提示Ctrl+] 縮進Ctrl+[ 取消縮進Ctrl + A 全選Ctrl+Z 撤消Ctrl + Shift + Z 或 Ctrl + Y 重做Ctrl+Home 轉到單元格的開始Ctrl + End 轉到單元格的結尾Ctrl+Left 向左移動一個單詞的距離Ctrl + Right 向右移一個單詞的距離進入 command 模式後,按 H(help)獲取鍵盤快捷鍵列表:
我列出了一些最常用的快捷方式。按 Esc 鍵確保您處於 command 模式:
使用上下鍵上下滾動 cell按 A/B 在活動 cell 的上方/下方插入新的 cellM 會將活動 cell 轉換為 Markdown cellY 將活動 cell 設置為代碼 cellX 將剪切所選 cellC 將複製所選擇的 cellV 將粘貼正在複製/剪切的 cellShift+V 粘貼上面的 cellS 將保存 NotebookF 查找/替換O 切換輸出D+D(按下 D 兩次)將刪除活動 cell。Z 撤消 cell 的刪除。要同時選擇多個 cell,請按住 Shift 鍵,然後向上或向下按。Shift + Space 向上滾動 notebookSpace 向下滾動 notebook選定多個 cell 時:
按 Shift + M 合併所選內容要在光標處拆分活動 cell,請在 edit 模式下按 Ctrl + Shift + -你也可以單擊並按住 Shift 鍵並在 cell 左側的空白處單擊以進行選擇不同 notebook 之間 cell 的複製和粘貼:
Notebook 1:-按住 Shift 鍵選擇多個 cell,然後按 Ctrl+c 進行複製Notebook 2:-按 Esc 鍵進入 command 模式,Ctrl + v 粘貼使用「 ! pip install <package> 」 在當前內核中安裝 package!
在 shell 命令中使用 python 變量的方法是在前面加一個「$」符號:
魔術命令
魔術命令是大大擴展 notebook 功能的快捷方式。
下面共享一個 notebook 中的示例代碼:
使用「%pastebin」魔術函數選擇一個 cell 區域Jupyter 給你一個秘密的 URL 來共享
若要查看已定義變量的列表,請使用%whos 或%who-ls
%whos 顯示變量類型以及一些額外的信息,如大小、內容等。%who_ls 只顯示變量名使用 Jupyter Notebook 中的外部文件:
%pycat file.py 在傳呼機中打開腳本%load file.py 將腳本插入 cell%run file.py 運行腳本%run file.ipynb 運行 notebook%notebook filename 將當前 IPython 歷史記錄導出到 notebook 文件獲取、設置或列出環境變量:
%env 列出所有的環境變量%env var 獲取變量的值%env var val為變量設定一個值在 shell 中運行命令:
%system 使用 shell(主要用於獲取當前目錄、日期等)
使用%autosave 將 notebook 自動保存到 checkpoint:
每 120 秒(2 分鐘)自動保存一次
執行不同的語言:
%%HTML 執行 HTML 代碼
%%perl 在子進程中執行 Perl%%javascript or %%js 執行 javascript 代碼塊%%python3 在子進程中使用 python3 執行代碼%%ruby 執行 Ruby 代碼其他魔術命令:
%history 列印輸入歷史%lsmagic 列出當前可用的 magic 函數%magic 列印關於 magic 函數系統的信息%matplotlib 設置 matplotlib 以交互工作%pwd 返回當前工作目錄%quickref 顯示快速參考表%time python 語句或表達式的執行時間Nbextensions
這個擴展的好處是它改變了默認值。
要安裝 nbextensions,請在 anaconda 命令行中執行以下命令:
conda install -c conda-forge jupyter_contrib_nbextensionsconda install -c conda-forge jupyter_nbextensions_configurator
或者,你也可以使用 pip 安裝 nbextensions:
pip show jupyter_contrib_nbextensions 運行 pip show 運行「pip show jupyter_contrib_nbextensions」來查找安裝 notebook 擴展的位置運行「jupyter contrib nbextensions install」安裝新的擴展安裝完成後,重新啟動 Jupyter notebook,你可以看到新的選項卡 Nbextensions 被添加到菜單上:
同樣的 nbextension 也可以在「Edit」菜單中找到:
現在,讓我們看看下面幾個例子:
1.Hinterland——它使得代碼單元中的每個按鍵都能自動完成菜單,而不是只能使用制表符做到這一點。
2.Split Cells Notebook——在 Jupyter notebook 中拆分 cell
進入 command 模式(Esc),使用 Shift + s 將當前 cell 切換為拆分 cell。
3.Table of Contents——允許收集所有正在運行的標題,並將其顯示在浮動窗口中,作為側邊欄或帶有導航的菜單。擴展也是可拖動、可調整大小、可摺疊、可固定的,具有自動編號功能,具有獨有的連結 ID 和可選的單元。
4.Autopep8——使用內核特定的代碼重新格式化/美化代碼單元的內容
5.Snippets——添加下拉菜單以將代碼段所在的 cell 插入當前 notebook。
Jupyter Notebook 主題
我們可以從 Jupyter Notebook 的默認主題轉換為黑暗模式。
為此,我們需要安裝 jupyterthemes:
jt -l 將給出可用主題的列表
jt -t <theme name>將更改主題。讓我們試著用 chesterish 主題把它改成黑暗模式。
jt-r 會將其恢復到默認主題
我們還可以用 Jupyter notebook 做很多其他我們還沒有嘗試的事情。這些事情留到下一個博客再寫吧。
我的其他博客帖子:
Build your first Machine Learning Model using TensorFlowUse cases of different Machine Learning AlgorithmsSteps To Activate Free Access To Datacamp, Pulralsight, LinkedIn Learning, Etc Through Visual StMy MozFest Experience and First Talkvia:https://towardsdatascience.com/optimizing-jupyter-notebook-tips-tricks-and-nbextensions-26d75d502663
雷鋒網雷鋒網雷鋒網