Datenanalyse mit Python : Auswertung von Daten mit Pandas NumPy und IPython Kapitel 7: Daten bereinigen und vorbereiten 7.1 Der Umgang mit fehlenden Daten Fehlende Daten herausfiltern Fehlende Daten einsetzen 7.2 Datentransformation Duplikate entfernen Daten mithilfe einer Funktion oder eines Mappings transformieren Werte ersetzen Achsenindizes umbenennen Diskretisierung und Klassifizierung Erkennen und Filtern von Ausreißern Permutation und zufällige Stichproben Berechnen von Indikator Platzhaltervariablen 7.3 Manipulation von Strings Methoden von String Objekten Reguläre Ausdrücke Vektorisierte String Funktionen in pandas 7.4 Schlussbemerkung Kapitel 8: Datenaufbereitung: Verknüpfen Kombinieren und Umformen 8.1 Hierarchische Indizierung Ebenen neu anordnen und sortieren Zusammenfassende Statistiken nach Ebene Indizierung mit den Spalten eines DataFrame 8.2 Kombinieren und Verknüpfen von Datensätzen Datenbankartige Verknüpfung von DataFrames Daten über einen Index verknüpfen Verketten entlang einer Achse Überlappende Daten zusammenführen 8.3 Umformen und Transponieren Umformen mit hierarchischer Indizierung Transponieren vom »langen« zum »breiten« Format Transponieren vom »breiten« zum »langen« Format 8.4 Schlussbemerkung Kapitel 9: Plotten und Visualisieren 9.1 Kurze Einführung in die matplotlib API Diagramme und Subplots Farben Beschriftungen und Linienformen Skalenstriche Beschriftungen und Legenden Annotationen und Zeichnungen in einem Subplot Diagramme in Dateien abspeichern Die Konfiguration von matplotlib 9.2 Plotten mit pandas und seaborn Liniendiagramme Balkendiagramme Histogramme und Dichteplots Streu oder Punktdiagramme Facettenraster und kategorische Daten 9.3 Andere Visualisierungswerkzeuge in Python 9.4 Schlussbemerkung Exponentiell gewichtete Funktionen Binäre Funktionen mit gleitendem Fenster Benutzerdefinierte Funktionen mit gleitenden Fenstern 11.8 Schlussbemerkung Kapitel 12: pandas für Fortgeschrittene 12.1 Kategorische Daten Hintergrund und Motivation Der Typ Categorical in pandas Berechnungen mit Categoricals Kategorische Methoden 12.2 Erweiterter Einsatz von GroupBy Gruppentransformationen und »ausgepackte« GroupBys Gruppiertes Zeit Resampling 12.3 Techniken für die Verkettung von Methoden Die Methode pipe 12.4 Schlussbemerkung Kapitel 13: Einführung in Modellierungsbibliotheken in Python 13.1 Die Kopplung zwischen pandas und dem Modellcode 13.2 Modellbeschreibungen mit Patsy herstellen Datentransformationen in Patsy Formeln Kategorische Daten und Patsy 13.3 Einführung in statsmodels Lineare Modelle schätzen Zeitreihenprozesse schätzen 13.4 Einführung in scikit learn 13.5 Ihre Ausbildung fortsetzen Kapitel 14: Beispiele aus der Datenanalyse 14.1 1.USA.gov Daten von Bitly Zählen von Zeitzonen in reinem Python Zeitzonen mit pandas zählen 14.2 MovieLens 1M Datensatz Messen von Unterschieden in der Bewertung 14.3 US Babynamen von 1880 2010 Namenstrends analysieren 14.4 Die USDA Nahrungsmitteldatenbank 14.5 Datenbank des US Wahlausschusses von 2012 Spendenstatistik nach Beruf und Arbeitgeber Spenden der Größe nach klassifizieren Spendenstatistik nach Bundesstaat 14.6 Schlussbemerkung Anhang A: NumPy für Fortgeschrittene Anhang B: Mehr zum IPython System Index Über den Autor Kolophon Kapitel 4: Grundlagen von NumPy: Arrays und vektorisierte Berechnung 4.1 Das ndarray von NumPy: ein mehrdimensionales Array Objekt ndarrays erzeugen Datentypen für ndarrays Rechnen mit NumPy Arrays Einfaches Indizieren und Slicing Boolesches Indizieren Fancy Indexing Arrays transponieren und Achsen tauschen 4.2 Universelle Funktionen: schnelle elementweise Array Funktionen 4.3 Array orientierte Programmierung mit Arrays Bedingte Logik als Array Operationen ausdrücken Mathematische und statistische Methoden Methoden für boolesche Arrays Sortieren Unique und andere Mengenlogik 4.4 Dateiein und ausgabe bei Arrays 4.5 Lineare Algebra 4.6 Erzeugen von Pseudozufallszahlen 4.7 Beispiel: Random Walks Viele Random Walks auf einmal simulieren 4.8 Schlussbemerkung Kapitel 5: Erste Schritte mit pandas 5.1 Einführung in die pandas Datenstrukturen Series DataFrame Indexobjekte 5.2 Wesentliche Funktionalität Neuindizierung Einträge von einer Achse löschen Indizierung Auswahl und Filterung Integer Indizes Arithmetik und Datenausrichtung Funktionsanwendung und Mapping Sortieren und Rangbildung Achsenindizes mit duplizierten Labels 5.3 Zusammenfassen und Berechnen deskriptiver Statistiken Korrelation und Kovarianz Eindeutigkeit Werteanzahl und Mitgliedschaft 5.4 Schlussbemerkung Kapitel 6: Laden und Speichern von Daten sowie Dateiformate 6.1 Lesen und Schreiben von Daten im Textformat Stückweises Lesen von Textdateien Daten in Textformaten schreiben Arbeiten mit separierten Formaten JSON Daten XML und HTML: Web Scraping 6.2 Binäre Datenformate Benutzung von HDF5 Lesen von Microsoft Excel Dateien 6.3 Interaktion mit Web APIs 6.4 Interaktion mit Datenbanken 6.5 Schlussbemerkung Kapitel 10: Aggregation von Daten und Gruppenoperationen 10.1 GroupBy Mechanismen Iteration über Gruppen Auswählen einer Spalte oder einer Teilmenge von Spalten Gruppieren mit Dictionarys und Series Gruppieren mit Funktionen Gruppieren nach Ebenen eines Index 10.2 Aggregation von Daten Spaltenweise und mehrfache Anwendung von Funktionen Aggregierte Daten ohne Zeilenindizes zurückgeben 10.3 Apply: Allgemeine Operationen vom Typ split apply combine Unterdrücken der Gruppenschlüssel Analyse von Quantilen und Größenklassen Beispiel: Fehlende Daten mit gruppenspezifischen Werten auffüllen Beispiel: Zufällige Stichproben und Permutation Beispiel: Gewichteter Mittelwert für Gruppen und Korrelation Beispiel: Gruppenweise lineare Regression 10.4 Pivot Tabellen und Kreuztabellierung Kreuztabellen 10.5 Schlussbemerkung Kapitel 11: Zeitreihen 11.1 Datentypen und Werkzeuge für Datum und Zeit Konvertieren zwischen String und datetime 11.2 Grundlagen von Zeitreihen Indizieren auswählen und Untermengen bilden Zeitreihen mit doppelten Indizes 11.3 Datumsbereiche Frequenzen und Verschiebungen Erzeugen von Datumsbereichen Frequenzen und Offsets von Kalenderdaten Verschieben von Datumsangaben (Vorlauf und Verzögerung) 11.4 Berücksichtigung von Zeitzonen Lokalisieren und Konvertieren von Zeitzonen Operationen mit Zeitstempeln bei zugeordneter Zeitzone Operationen zwischen unterschiedlichen Zeitzonen 11.5 Perioden und Arithmetik von Perioden Umwandlung der Frequenz von Perioden Quartalsweise Perioden Zeitstempel zu Perioden konvertieren (und zurück) Erstellen eines PeriodIndex aus Arrays 11.6 Resampling und Konvertieren von Frequenzen Downsampling Upsampling und Interpolation Resampling mit Perioden 11.7 Funktionen mit gleitenden Fenstern Intro Vorwort Kapitel 1: Einleitung 1.1 Worum geht es in diesem Buch Welche Arten von Daten 1.2 Warum Python für die Datenanalyse Python als Kleister Das »Zwei Sprachen Problem« lösen Warum nicht Python 1.3 Grundlegende Python Bibliotheken NumPy pandas matplotlib IPython und Jupyter SciPy scikit learn statsmodels 1.4 Installation und Einrichtung Windows Apple (OS X macOS) GNU Linux Python Pakete installieren oder aktualisieren Python 2 und Python 3 Integrierte Entwicklungsumgebungen (Integrated Development Environments IDEs) und Texteditoren 1.5 Community und Konferenzen 1.6 Navigation durch dieses Buch Codebeispiele Daten für die Beispiele Importkonventionen Jargon Kapitel 2: Grundlagen von Python IPython und Jupyter Notebooks 2.1 Der Python Interpreter 2.2 IPython Grundlagen Die IPython Shell ausführen Das Jupyter Notebook ausführen Befehlsergänzung mit Tab Introspektion Der %run Befehl Code aus der Zwischenablage ausführen Terminal Tastenkürzel Über magische Befehle matplotlib Integration 2.3 Grundlagen der Sprache Python Sprachsemantik Skalare Typen Kontrollfluss Kapitel 3: In Python integrierte Datenstrukturen Funktionen und Dateien 3.1 Datenstrukturen und Sequenzen Tupel Listen Eingebaute Funktionen von Sequenzen Dictionarys Set List Set und Dict Comprehensions 3.2 Funktionen Namensraum Gültigkeitsbereich und lokale Funktionen Mehrere Rückgabewerte Funktionen sind Objekte Anonyme oder Lambda Funktionen Currying: teilweise Anwendung von Argumenten Generatoren Fehler und die Behandlung von Ausnahmen 3.3 Dateien und das Betriebssystem Bytes und Unicode mit Dateien 3.4 Schlussbemerkung