Data Science Notizen
Persönliche Lern- und Nachschlagenotizen
Thematisch geordnete Notizen zu Data Science. Jede Seite behandelt ein Thema, die Beispiele stehen parallel in R und Python, und die Statistikmethoden zeigen ihren vollständigen Output mit der Interpretation jedes einzelnen Werts.
Es gibt vier Seitentypen. Konzeptseiten erklären, was etwas bedeutet. Methodenseiten führen eine Methode durch und lesen ihren Output. Werkzeugseiten zeigen, wie man etwas macht. Die Befehlsreferenz listet nur Befehle. Quer dazu liegen Tags, das Glossar und die Statusübersicht, die zeigt, welche Seiten schon Inhalt haben.
Einstieg
Mehrere Wege durch die Seite, je nachdem, womit man anfängt. Jeder Pfad ist eine Reihenfolge, in der die Seiten aufeinander aufbauen.
Die Arbeitsumgebung einrichten. Für den Anfang, bevor die erste Zeile Code geschrieben wird.
Von null zur multiplen Regression. Für den Aufbau eines statistischen Fundaments in der Reihenfolge, in der die Begriffe aufeinander aufbauen.
- Skalenniveaus
- Lage- und Streuungsmasse
- Korrelation
- Normalverteilung und zentraler Grenzwertsatz
- Schätzen und Konfidenzintervalle
- Hypothesentests: Grundlagen
- t-Test für zwei Stichproben
- Einfache lineare Regression
- Multiple lineare Regression
- Regressionsdiagnostik
Welchen Test brauche ich. Für den konkreten Fall, wenn die Daten schon da sind.
Experimente und Ursachen. Für die Frage, ob etwas wirkt, und wie gross die Wirkung ist.
- Hypothesentests: Grundlagen
- Power und Stichprobenumfang
- Versuchsplanung und A/B-Tests
- Bayessche Inferenz
- Kausale Inferenz
- Gemischte Modelle, wenn Messungen gruppiert sind
Mit einem Sprachmodell arbeiten. Für die Frage, wofür sich das Werkzeug eignet und wofür nicht, bis zur Anbindung aus dem eigenen Code.
- Wann was verwenden
- Bausteine eines Prompts
- Prompts für die Datenarbeit
- Modelle und ihre Grenzen
- Sprachmodelle per API
- Embeddings und RAG
Vom Ergebnis zum Bericht. Für den Schritt nach der Rechnung.
Von der Rohdatei zur Grafik. Für alles, was vor der Statistik passiert.
- Datenimport und Formate, bei Schnittstellen APIs und Web-Scraping
- Tidy Data
- Data Wrangling, bei Freitext Textdaten und reguläre Ausdrücke
- Datenqualität
- Grosse Datenmengen, sobald CSV zu langsam wird
- Diagrammtyp wählen
- ggplot2 oder matplotlib
Programmierung
Python und R als Handwerkszeug, dazu Pakete, Umgebungen und reproduzierbares Arbeiten. Zur Bereichsübersicht.
Python-Grundlagen
Datentypen, Kontrollfluss, Listen und Dictionaries als Arbeitsbasis.
Funktionen und Module in Python
Eigene Funktionen, Gültigkeitsbereiche, Import und Modulstruktur.
Objektorientierung in Python
Klassen, Instanzen, Vererbung und wann sich der Aufwand lohnt.
Fehlerbehandlung und Dateizugriff
Exceptions gezielt abfangen, Dateien lesen und schreiben.
R-Grundlagen
Vektoren, Data Frames, Funktionen und die Eigenheiten von R.
NumPy und SciPy
Arrays, Vektorisierung und die wichtigsten numerischen Werkzeuge.
pandas
Series und DataFrame, Auswahl, Aggregation und Zusammenführen.
Pakete und Umgebungen
pip, conda, venv und renv, und warum Umgebungen getrennt gehören.
Fragen zur Programmierung
Übergreifende Fragen zu Python, R, Paketen und reproduzierbarem Arbeiten.
Reproduzierbarkeit
Projekte, Notebooks, Seeds und Quarto als durchgehender Arbeitsweg.
Daten
Von der Rohdatei über Tidy Data und Wrangling bis zur Datenqualität. Zur Bereichsübersicht.
Datenimport und Formate
CSV, Excel, JSON und Pickle lesen und schreiben, Kodierung beachten.
Tidy Data
Eine Zeile je Beobachtung, eine Spalte je Variable, und warum das trägt.
Data Wrangling
Filtern, sortieren, gruppieren, umformen und verbinden in beiden Sprachen.
Datum und Zeit
Datumsangaben einlesen, Bestandteile herausziehen, rechnen, Zeitzonen.
Textdaten und reguläre Ausdrücke
Text zerlegen, bereinigen und vereinheitlichen mit regulären Ausdrücken, und die Fallen bei Punkt, Gier und Umlauten.
Datenqualität
Plausibilität, fehlende Werte, Duplikate und uneinheitliche Kategorien.
APIs und Web-Scraping
Daten aus Schnittstellen und Webseiten holen: JSON seitenweise abrufen, HTML auslesen, Fehler abfangen und fair bleiben.
Grosse Datenmengen
Wenn CSV und Arbeitsspeicher an Grenzen kommen: Parquet, nur benötigte Spalten lesen und verzögerte Auswertung mit Arrow und Polars.
Fragen zu Daten
Übergreifende Fragen zu Import, Wrangling, Datenqualität und SQL.
Datenbanken
Modellierung, SQL, der Zugriff aus R und Python und die gängigen Systeme von SQLite über PostgreSQL bis MongoDB. Zur Bereichsübersicht.
Datenmodellierung
Relationales Modell, Schlüssel, Beziehungen und Normalisierung.
SQL
Abfragen, Joins, Aggregation und Unterabfragen.
Datenbankzugriff
Aus R und Python verbinden, abfragen, schreiben und sauber schliessen.
SQLite
Die Datenbank als einzelne Datei: ohne Server, ideal für Auswertungen und Prototypen.
DuckDB
SQL für analytische Auswertungen im eigenen Prozess, direkt auf Dateien.
PostgreSQL
Der Standard unter den offenen Serverdatenbanken, mit Fensterfunktionen, JSON und Erweiterungen.
MySQL und MariaDB
Weit verbreitete Serverdatenbanken, ihre Eigenheiten und der Zugriff aus R und Python.
MongoDB
Dokumentdatenbank ohne festes Schema: wann sie passt und wie man sie abfragt.
Fragen zu Datenbanken
Übergreifende Fragen zur Wahl des Systems und zu Eigenheiten, die zwischen den Systemen verschieden sind.
Werkzeuge
Shell, Git und Container als Umgebung, in der die Arbeit stattfindet. Zur Bereichsübersicht.
Linux und Shell
Dateien, Rechte, Pipes und die Befehle, die man täglich braucht.
Git
Commits, Branches, Merge-Konflikte und der Umgang mit Remotes.
Docker und Virtualisierung
Images, Container, Volumes und wann sich der Aufwand lohnt.
R-Umgebungen
RStudio, Positron und Posit Cloud: Oberfläche, Projekte und die Einstellungen, die man ändern sollte.
Python-Umgebungen
Anaconda, Jupyter, VS Code und Colab: welches Python läuft, welcher Kernel rechnet und warum der Import scheitert.
Quarto
Dokumente, Berichte und Websites aus Text und Code: Aufbau, Chunk-Optionen, Formate und Veröffentlichen.
Fragen zu den Werkzeugen
Übergreifende Fragen zu Shell, Git, Containern und den Umgebungen für R und Python.
Statistik
Der Weg von der Beschreibung über die Wahrscheinlichkeit zu Inferenz, Tests und Modellen. Zur Bereichsübersicht.
Grundlagen
Skalenniveaus, Häufigkeiten, Lage und Streuung, Korrelation und explorative Analyse.
Wahrscheinlichkeit
Kombinatorik, bedingte Wahrscheinlichkeit, Zufallsvariablen und Verteilungen.
Inferenz
Schätzen, Konfidenzintervalle, Testlogik, Effektstärken, Power und Resampling.
Tests
Entscheidungsbaum und die einzelnen Testverfahren für Mittelwerte, Häufigkeiten und Zusammenhänge.
Regression
Modellwahl nach Zielvariable, Schätzung, Diagnostik und Güte.
Überlebenszeit
Zensierung, Überlebensfunktion, Kaplan-Meier, Log-Rank-Test und Cox-Modell.
Multivariate Verfahren
Distanzmasse, Hauptkomponenten, Faktorenanalyse und Clustering.
Zeitreihen
Trend und Saison, Stationarität, Glättung und ARIMA-Modelle.
KI
Sprachmodelle im Arbeitsalltag: wann sie helfen, wann nicht, und fertige Prompts zum Kopieren. Zur Bereichsübersicht.
Wann was verwenden
Entscheidungshilfe: welches Vorgehen, welches Pattern und welches Modell für welche Aufgabe.
Bausteine eines Prompts
Rolle, Aufgabe, Kontext, Format und Randbedingungen, mit Vorlage zum Kopieren.
Grundlegende Patterns
Persona, Rückfragen, Beispiele, Ballast entfernen und Umformulieren, mit fertigen Prompts.
Denkführende Patterns
Schrittweises Denken, Abstraktion, Zerlegung und Code als Denkwerkzeug.
Prüfende Patterns
Antworten gegenprüfen, mehrfach rechnen lassen und gezielt überarbeiten.
Prompts für die Datenarbeit
Fertige Prompts für Import, Aufbereitung, Analyse, Grafik und Bericht.
Modelle und ihre Grenzen
Wie Sprachmodelle antworten, welche Kategorien es gibt und wo sie zuverlässig scheitern.
Vom Prompt zum Kontext
Wenn die Formulierung nicht mehr reicht: Kontext, Wissensanbindung und Agenten.
Sprachmodelle per API
Ein Sprachmodell aus R und Python aufrufen: Anfrage, Systemvorgabe, strukturierte Ausgabe, Kosten und Fehlerbehandlung.
Embeddings und RAG
Texte als Vektoren, Ähnlichkeit messen, passende Ausschnitte suchen und einem Sprachmodell als Material mitgeben.
KI-Entwürfe überarbeiten
Typische Schreibmuster maschineller Entwürfe erkennen und gezielt beseitigen.
Fragen zu KI
Übergreifende Fragen zu Einordnung, Patterns, Grenzen und Prüfung.
Visualisierung
Vom Zielbild über Wahrnehmung und Diagrammwahl zu den Werkzeugen. Zur Bereichsübersicht.
Zielbild und Publikum
Zweck, Publikum und der Unterschied zwischen explorativ und erklärend.
Wahrnehmung und Kodierung
Welche visuellen Kanäle genau abgelesen werden und welche nicht.
Diagrammtyp wählen
Vom Datentyp und der Botschaft zur passenden Darstellung.
ggplot2
Grammatik der Grafik, Ebenen, Skalen und Facetten in R.
matplotlib
Figure und Axes, Achsen, Beschriftung und Export in Python.
seaborn und plotly
Statistische Standardgrafiken und interaktive Darstellungen in Python.
Farbe
Paletten nach Aufgabe, Kontrast und Farbfehlsichtigkeit.
Irreführende Darstellungen
Abgeschnittene Achsen, falsche Flächen und andere Verzerrungen.
Dashboards und Interaktivität
Was Interaktion bringt, was sie kostet, und wie man Dashboards ordnet.
Fragen zur Visualisierung
Übergreifende Fragen zu Wahrnehmung, Diagrammwahl und Darstellungsethik.
Storytelling mit Daten
Aufbau, Betonung und Text als Teil der Grafik.
Wissenschaftliches Arbeiten
Ergebnisse berichten, Literatur verwalten und zitieren, und ein reproduzierbarer Bericht als Vorlage. Zur Bereichsübersicht.
Ergebnisse berichten
Statistische Ergebnisse vollständig und im APA-Stil berichten: was in den Satz gehört, wie Zahlen formatiert werden und was nicht.
Literatur verwalten und zitieren
Quellen mit Zotero sammeln, als BibTeX exportieren und in Quarto zitieren, mit Literaturverzeichnis und Zitierstil.
Berichtsvorlage
Aufbau eines reproduzierbaren Berichts in Quarto: Ordner, Kopf, Gliederung und Zahlen im Text, die aus dem Code kommen.
Referenz
Die Seite wächst weiter. Welche Seite wie weit ist, zeigt die Statusübersicht; nützliche Werkzeuge, Datenquellen und Kurse ausserhalb dieser Seiten stehen in der Linkliste.