Bevezetés
A Jupyter Notebook manapság valószínűleg a leggyakrabban használt környezet a Machine Learning / Data Science feladatok megoldásához a Pythonban.
A Jupyter Notebook egy kliens-szerver alkalmazás, amelyet notebook dokumentumok futtatásához használnak a böngészőben. A notebook dokumentumok olyan kódok, amelyek tartalmazhatnak kódot és gazdag szöveges elemeket is, például bekezdések, egyenletek stb.
Ebben a cikkben néhány egyszerű trükköt ismertetek, hogyan javíthatja a Jupyter Notebook használatával szerzett tapasztalatait. Hasznos parancsikonokból indulunk ki, és végül hozzáadunk témákat, automatikusan létrehozott tartalomjegyzéket és még sok mást.
Parancsikonok
A parancsikonok valóban hasznosak lehetnek a kódírás felgyorsításában. Most végigvezetem néhány olyan parancsikonon, amelyeket a Jupyterben a leghasznosabbnak találtam.
Kétféle módon lehet kommunikálni a Jupyter Notebookkal: Parancs mód és Szerkesztés mód. Egyes parancsikonok csak egyik vagy másik módban működnek, míg mások mindkét módban közösek.
Néhány gyorsbillentyű, amely mindkét módban gyakori:
- Ctrl + Enter : az összes kijelölt cella futtatásához
- Shift + Enter : az aktuális cella futtatása és a következő áthelyezése
- Ctrl + s : jegyzetfüzet mentése
A Jupyter parancs módba való belépéshez meg kell nyomnunk az Esc billentyűt, majd a következő parancsok bármelyikét:
- H : a Jupyter Notebook összes elérhető parancsikonjának megjelenítése
- Shift + Fel / Le nyíl : több notebook cellának kiválasztása egyszerre (az enter megnyomásával több cella kiválasztása után mindegyik futtatható lesz!)
- V : Helyezzen be egy új cellát fent
- B : Helyezzen be egy új cellát alul
- X : vágja ki a kijelölt cellákat
- Z : visszavonja a cella törlését
- Y : a cellatípus módosítása kódra
- M : a cellatípus módosítása Markdownra
- Szóköz : görgesse lefelé a jegyzetfüzetet
- Shift + szóköz : görgesse fel a jegyzetfüzetet
Ahhoz, hogy ehelyett Jupyter szerkesztési módba lépjünk, meg kell nyomnunk az Enter billentyűt és egymás után a következő parancsok bármelyikét:
- Tab : kódverseny javaslatok
- Ctrl +] : behúzási kód
- Ctrl + [ : dedent kód
- Ctrl + z : visszavonás
- Ctrl + y : újra
- Ctrl + a : az összes kijelölése
- Ctrl + Home : a kurzor áthelyezése a cellakezdésre
- Ctrl + End : mozgassa a kurzort a cella végére
- Ctrl + Bal : a kurzor mozgatása egy szóval balra
- Ctrl + Jobb : a kurzor mozgatása egy szóval jobbra
Shell parancsok és csomagok telepítése
Nem sok felhasználó ismeri ezt, de héjparancsok futtathatók a Jupyter notebook cellájában egy felkiáltójel hozzáadásával a cella elejére. Például, ha egy cellát futtat ! Ls -sel, akkor az aktuális munkakönyvtár összes elemét visszaadja. Ha egy cellát futtat a ! Pwd paranccsal, akkor az az aktuális könyvtárfájl útvonalat nyomtatja ki.
Ugyanez a trükk alkalmazható a Python csomagok Jupyter notebookba történő telepítésére is.
!pip install numpy
Jupyter témák
Ha érdekli a Jupyter noteszgép küllemének megváltoztatása, lehetőség van különféle témák gyűjteményét tartalmazó csomag telepítésére. Az alapértelmezett Jupyter téma úgy néz ki, mint az 1. ábrán. A 2. ábrán láthatja, hogyan tudjuk személyre szabni az aspektusát.

Telepíthetjük csomagunkat közvetlenül a notebookba az előző szakaszban bemutatott trükk segítségével:
!pip install jupyterthemes
A következő parancsot futtathatjuk az összes elérhető téma nevének felsorolásához:
!jt -l # Cell output: # Available Themes: # chesterish # grade3 # gruvboxd # gruvboxl # monokai # oceans16 # onedork # solarizedd # solarizedl
Végül kiválaszthatunk egy témát a következő paranccsal (ebben a példában úgy döntöttem, hogy a solarized1 témát használom):
!jt -t solarizedl
Miután futtattuk ezt a parancsot és frissítettük az oldalt, a jegyzetfüzetünknek úgy kell kinéznie, mint a 2. ábrán.

Abban az esetben, ha bármikor vissza akar térni az eredeti Jupyter notebook témához, futtassa a következő parancsot, és frissítse oldalát.
!jt -r
Jupyter Notebook kiterjesztések
A notebook kiterjesztésekkel javítható a felhasználói élmény, és sokféle személyre szabási technika kínálható.
Ebben a példában az nbextensions könyvtárat fogom használni az összes szükséges widget telepítéséhez (ezúttal azt javaslom, hogy először telepítse a csomagokat a terminálon keresztül, majd nyissa meg a Jupyter notebookot). Ez a könyvtár különféle Javascript modelleket használ a notebook felületének gazdagítása érdekében.
! pip install jupyter_contrib_nbextensions ! jupyter contrib nbextension install --system
Az nbextensions telepítése után észreveszi, hogy van egy extra fül a Jupyter notebook kezdőlapján (3. ábra).

Az Nbextensions fülre kattintva megkapjuk az elérhető widgetek listáját. Esetemben úgy döntöttem, hogy engedélyezem a 4. ábrán láthatóakat.

Néhány kedvenc kiterjesztésem:
- Tartalomjegyzék
Auto-generate a table of contents from markdown headings (Figure 5).

2. Snippets
Sample codes to load common libraries and create sample plots which you can use as a starting point for your data analysis (Figure 6).

3. Hinterland
Code autocompletion for Jupyter Notebooks (Figure 7).

The nbextensions library provides many other extensions apart for these three, so I encourage you to experiment and test any other which can be of interest for you!
Markdown Options
By default, the last output in a Jupyter Notebook cell is the only one that gets printed. If instead we want to automatically print all the commands without having to use print(), we can add the following lines of code at the beginning of the notebook.
from IPython.core.interactiveshell import InteractiveShell InteractiveShell.ast_node_interactivity = "all"
Additionally, it is possible to write LaTex in a Markdown cell by enclosing the text between dollar signs ($).
Notebook Slides
It is possible to create a slideshow presentation of a Jupyter Notebook by going to View -> Cell Toolbar -> Slideshow and then selecting the slides configuration for each cell in the notebook.
Finally, by going to the terminal and typing the following commands the slideshow will be created.
pip install jupyter_contrib_nbextensions # and successively: jupyter nbconvert my_notebook_name.ipynb --to slides --post serve

Magic
Magics are commands which can be used to perform specific commands. Some examples are: inline plotting, printing the execution time of a cell, printing the memory consumption of running a cell, and so on.
Magic commands which start with just one % apply their functionality just for one single line of a cell (where the command is placed). Magic commands which instead start with two %% are applied to the whole cell.
It is possible to print out all the available magic commands by using the following command:
%lsmagic
Contact info
If you want to keep updated with my latest articles and projects follow me and subscribe to my mailing list. These are some of my contact details:
- Personal Blog
- Personal Website
- Medium Profile
- GitHub
- Kaggle
Cover photo from this article.