In diesem Hackathon werden folgende Themen erklärt und gemeinsam ausprobiert:
- Einführung in Jupyter Notebooks und warum sie hilfreich bei der Datenanalyse sind
- Einführung in Markdown als weiter verbreitete, leicht lesbare Auszeichnungssprache
- Einführung in die häufig von Datenwissenschaftlern genutzte Python Programmiersprache
- Einführung in die häufig für die Datenverwaltung und -analyse genutzte Python Bibliothek Pandas
- Programmatisches abrufen von (Regional-)Statistiken mit Beispielen von Datenguide
- Einführung in die Datenvisualisierung mit Beispielen von Datawrapper
Jupyter Notebooks ermöglichen es, Informationen mit Markdown zu beschreiben sowie Programmiercode zu schreiben, auszuführen und Daten zu visualisieren. Jupyter Notebooks können jederzeit mit neuen Daten ausgeführt werden und bieten somit eine interaktive Dokumentation, lassen sich gut in einer Versionsverwaltung speichern und können einfach mit anderen geteilt werden.
Es wird empfohlen das Jupyter Tutorial durchzugehen.
Jupyter Notebooks können in verschiedenen Umgebungen genutzt werden. Für diesen Hackathon werden wir Binder verwenden, da es komplett kostenlos ist und keinen Account benötigt.
Binder hat folgende Einschränkungen, die beachtet werden sollten:
- Sessions werden nach 10 Minuten Inaktivität beendet
- Sessions bleiben aktiv, solange das Browser Tab aktiv und im Vordergrund ist
- Modifikationen können nur manuell im Browser gespeichert werden
Ein leeres Jupyter Notebook für diesen Hackathon kann einfach über folgenden Link gestartet werden:
notebook.ipynb
in Binder öffnen
Markdown ist eine weit verbreitete und häufig von Programmierern und Datenwissenschaftlern genutzte vereinfachte Auszeichnungssprache.
Diese README.md Datei ist eine Markdown Datei, welche sowohl den Text als auch eine Beschreibung der Formatierung des Textes enthält.
Es wird empfohlen ein Markdown Tutorial durchzugehen.
Im Unterverzeichnis beispiele
befindet sich markdown.ipynb
, eine Markdown Referenz in einem Jupyter Notebook. Diese kann über folgenden Link in Binder geöffnet werden:
markdown.ipynb
in Binder öffnen
- Öffne ein leeres Jupyter Notebook
- Ändere den Cell Type der angezeigten Cell auf Markdown
- Schreibe ein Hallo Welt Beispiel in Markdown
- Führe das Beispiel mit Run aus und verifiziere, dass die Markdown Formatierung korrekt angezeigt wird
- Speichere das Resultat im Browser Storage, dann ändere etwas und lade dann die vorherige Version aus dem Browser Storage
hallo_welt.ipynb
in Binder öffnen
Python ist eine weit verbreitete, einfach zu erlernende Programmiersprache welche insbesondere für die Datenanalyse genutzt wird. Es gibt viele Einführungen und Tutorials, wir werden uns jedoch auf die wesentlichen Informationen beschränken um Daten analysieren und visualisieren zu können. Für weitergehende Informationen wird das offizielle (englischsprachige) The Python Tutorial empfohlen.
Das Python Tutorial für diesen Hackathon findet sich im python_tutorial.ipynb
Jupyter Notebook und kann über folgenden Link in Binder geöffnet werden:
python_tutorial.ipynb
in Binder öffnen
- Öffne ein leeres Jupyter Notebook
- Schreibe eine Funktion für den Satz des Pythagoras mit Parametern für die beiden Katheten
a
undb
. Die Funktion soll die Hypotenusec
ausgeben - Tipp: Binde das Modul
math
ein um mitmath.sqrt()
die Wurzel ziehen zu können
Pandas ist ein Python Paket welches performante und benutzerfreundliche Datenstrukturen sowie Datenanalysetools bereitstellt.
Pandas stellt mit Series und Dataframe zwei zentrale Datenstrukturen bereit, die im folgenden Tutorial genauer beschrieben werden. Die Pandas Getting Started Tutorials bieten viele weitergehende Informationen (auf englisch) zu Pandas.
Das Pandas Tutorial für diesen Hackathon findet sich im pandas_tutorial.ipynb
Jupyter Notebook und kann über folgenden Link in Binder geöffnet werden:
pandas_tutorial.ipynb
in Binder öffnen
- Öffne ein leeres Jupyter Notebook
- Suche in der OpenLigaDB eine Sportart und Liga deiner Wahl aus und lese die Tabelle dieser Sportart / Liga in einen DataFrame
- Wie hoch ist die durchschnittliche und die maximale Punktzahl aller Vereine?
- Überlege dir weitere Abfragen an die Daten
In dem Tutorial Datenvisualisierung mit Python, Pandas und Matplotlib wird gezeigt wie mehrere Tabellen in Pandas miteinander verknüpft werden können und diese dann graphisch mit dem Python Paket Matplotlib visualisiert werden können.
Das Tutorial für diesen Hackathon findet sich im visualisierung_tutorial.ipynb
Jupyter Notebook und kann über folgenden Link in Binder geöffnet werden:
visualisierung_tutorial.ipynb
in Binder öffnen
- Öffne ein leeres Jupyter Notebook
- Suche in der OpenLigaDB eine Sportart und Liga deiner Wahl aus und lese mehrere Tabellen dieser Sportart / Liga aus unterschiedlichen Jahren in einen DataFrame
- Visualisiere einige Statistiken aus diesen Tabellen wie z.B. die geschossenen Tore der Mannschaft
Datawrapper ist ein Webservice um ansprechende, informative und einfach zu nutzende Visualisierungen zu erstellen. In diesem Tutorial werden einige Beispiele gezeigt um Visualisierungen mit Datawrapper zu erstellen.
Das Tutorial für diesen Hackathon findet sich im datawrapper_tutorial.ipynb
Jupyter Notebook und kann über folgenden Link in Binder geöffnet werden:
datawrapper_tutorial.ipynb
in Binder öffnen
- Öffne ein leeres Jupyter Notebook in JupyterLab
- Schreibe eine Python Funktion welche Würfelwürfe simuliert
- Die Funktion soll Würfel mit beliebig vielen Seiten unterstützen. Was ist dennoch ein sinnvolles Maximum?
- Die Funktion soll das Werfen mehrerer Würfel gleichzeitig unterstützen. Was ist ein sinnvolles Maximum für die Anzahl der gleichzeitig geworfenen Würfel?
- Führe nun Würfelwürfe mit mindestens 2 Würfeln gleichzeitig und mindestens 6 Seiten pro Würfel durch und stelle diese als Histogram mithilfe von Datawrapper dar
- Probiere nun unterschiedliche Anzahl von Würfelwürfen, Anzahl an Würfeln und Seiten pro Würfel
- Stelle die Ergebnisse grafisch ansprechend mit Datawrapper dar