=====Einführung Jupyter Notebook===== Ein //Jupyter Notebook// kann bei einer //Anaconda//-Installation direkt aus dem //Anaconda Navigator// gestartet werden: {{:wiki:jupyter_start.png?400|}} Bei einer //Miniconda//-Installation muss zum Starten der Jupyter-Notebooks ein Befehlsfenster (//Window Command//, //Power Shell//, //Annaconda Prompt// etc.) geöffnet und der Befehl //jupyter-notebook.exe// eingegeben werden. \\ Bei einigen Windows-Versionen befindet sich ein neues Icon //Jupyter-Notebook (HfM_...)// im Start-Menu, das man einfach anklicken kann. Die Jupyter-Notebooks öffnen sich dann in Browser. Nach dem Start wird im Browser automatisch ein lokales Datenverzeichnis anzeigt. Dort kann das gewünschte Notebook ausgewählt werden. Dazu muss die entsprechende Datei zuvor in diesem Datenverzeichnis gespeichert werden (Rechtsklick -> Ziel speichern unter). \\ Außerdem wird angezeigt ob ein bestimmtes Notebook bereits geöffnet ist (geöffnete Notebooks werden grün Angezeigt): {{:wiki:jupyter_browse.png?500|}} Die Jupyter Notebooks unterteilen sich in aufeinander folgende Text- und Code-Zellen. Anhand des ausgewählten Modus (in Abbildung rot markiert) kann man jeweils erkennen, ob in der Zelle Text (Markdown-Modus) steht oder Python-Code (Code-Modus) ausgeführt werden kann: {{:wiki:jupyter-mode.png?500|}} Sowohl Markdown-Zellen als auch Code-Zellen können von jedem User verändert und bearbeitet werden, indem innerhalb eines Blocks die Eingabetaste gedrückt wird. So können etwa Textkommentare ergänzt werden (Markdown) oder Veränderungen im Code vorgenommen werden. Eigene, veränderte Versionen des Notebooks können unter neuem Namen lokal abgespeichert werden (Menu: File -> Save as), damit das Original-Notebook unverändert bleibt. Der **Code** in jeder Zelle kann mit dem Run-Button ausgeführt werden. Während der Ausführung erscheint oben im Browser-Tab eine Sanduhr. Die Code-Zellen werden in der Regel der Reihe nach (von oben nach unten) ausgeführt; die Code-Zellen sind durchnummeriert (in Abbildung rot markiert): {{:wiki:jupyter_order.png?500|}} Will man alle Code-Zellen nacheinander ausführen, dann wählt man "Restart & Run all" in der Kernel-Spalte aus: {{:wiki:jupyter_runall.png?500|}} ACHTUNG: Angesichts der großen Datenmengen in Notendateien dauert es bisweilen ziemlich lange, bis ein Code-Befehl ausgeführt ist. Will man die Ausführung unter- bzw. abbrechen, so geschieht dies über den Menupunkt //Kernel - Interrupt// bzw. //-Shutdown//. In Jupyter-Notebook-Tutorials wird der Code in der Regel durch ausführliche Informationen ergänzt, die hinter ein #-Zeichen platziert sind. Dabei werden alle Zeilen hinter einer # nicht ausgeführt; dies bietet die Möglichkeit, Erläuterungen zum Code in den Code cells zu vermerken, z.B. wie der Code an die eigenen Bedürfnisse angepasst werden kann - etwa indem eine andere Datei geladen oder indem die Takt- oder Stimmenauswahl geändert wird.\\ Hierfür verwendet man am besten die //Make a Copy// oder //Save as// Funktionen in der File-Spalte aus: {{:wiki:jupyter_save.png?500|}} Eine neue Zelle wird mit dem +-Button oder den Menu-Punkt Insert erzeugt und kann dann als Markdown- oder Code-Zelle festgelegt werden. Die //Save and Checkpoint//-Funktion ermöglicht es, einen lokalen Snapshots zu erstellen, damit man bequem verschiedene Werte/Zustände des Notebooks ausprobieren kann. Beim Ausschalten des Jupyter-Noteboooks wird in der Regel der letzte erstellte Snapshot mitgespeichert. Will man die Arbeit mit dem Jupyter-Notebook beenden, wählt man die //Close and Halt// Option aus der File-Spalte aus. Dies ist notwendig, damit der Python-Kernel ebenfalls beendet werden kann (beim einfachen Schließen des Tabs läuft dieser sonst weiterhin im Hintergrund). {{:wiki:jupyter_close.png?500|}}