
Handbuch Data Science mit Python
Description
Alles über E-Books | Antworten auf Fragen rund um E-Books, Kopierschutz und Dateiformate finden Sie in unserem Info- & Hilfebereich.
More details
Other editions
Additional editions


Persons
Content
- Cover
- Titel
- Impressum
- Inhalt
- Einleitung
- Teil I: Mehr als normales Python: Jupyter
- 1 Der Einstieg in IPython und Jupyter
- Die IPython-Shell starten
- Das Jupyter Notebook starten
- Hilfe und Dokumentation in IPython
- Tastaturkürzel in der IPython-Shell
- 2 Erweiterte interaktive Features
- Magische Befehle in IPython
- Verlauf der Ein- und Ausgabe
- IPython und Shell-Befehle
- 3 Debugging und Profiling
- Fehler und Debugging
- Profiling und Timing von Code
- Weitere IPython-Ressourcen
- Teil II: Einführung in NumPy
- 4 Die Datentypen in Python
- Python-Integer sind mehr als nur ganzzahlige Werte
- Python-Listen sind mehr als nur einfache Listen
- Arrays feststehenden Typs in Python
- Arrays anhand von Listen erzeugen
- Neue Arrays erzeugen
- NumPys Standarddatentypen
- 5 Grundlagen von NumPy-Arrays
- Attribute von NumPy-Arrays
- Indizierung von Arrays: Zugriff auf einzelne Elemente
- Slicing: Teilmengen eines Arrays auswählen
- Arrays umformen
- Arrays verketten und aufteilen
- 6 Berechnungen mit NumPy-Arrays: universelle Funktionen
- Langsame Schleifen
- Kurz vorgestellt: UFuncs
- NumPys UFuncs im Detail
- UFunc-Features für Fortgeschrittene
- UFuncs: mehr erfahren
- 7 Aggregationen: Minimum, Maximum und alles dazwischen
- Summieren der Werte eines Arrays
- Minimum und Maximum
- Beispiel: Durchschnittliche Größe der US-Präsidenten
- 8 Berechnungen mit Arrays: Broadcasting
- Kurz vorgestellt: Broadcasting
- Für das Broadcasting geltende Regeln
- Broadcasting in der Praxis
- 9 Vergleiche, Maskierungen und boolesche Logik
- Beispiel: Regentage zählen
- Vergleichsoperatoren als UFuncs
- Boolesche Arrays verwenden
- Boolesche Arrays als Maskierungen
- Verwendung der Schlüsselwörter »and« bzw. »or« und der Operatoren & bzw. |
- 10 Fancy Indexing
- Fancy Indexing im Detail
- Kombinierte Indizierung
- Beispiel: Auswahl zufälliger Punkte
- Werte per Fancy Indexing modifizieren
- Beispiel: Daten gruppieren
- 11 Arrays sortieren
- Schnelle Sortierung in NumPy: np.sort und np.argsort
- Nach Zeilen und Spalten sortieren
- Teilsortierungen: Partitionierung
- Beispiel: k nächste Nachbarn
- 12 Strukturierte Daten: NumPys strukturierte Arrays
- Strukturierte Arrays erzeugen
- Erweiterte zusammengesetzte Typen
- Record-Arrays: strukturierte Arrays mit Pfiff
- Weiter mit Pandas
- Teil III: Datenbearbeitung mit Pandas
- 13 Kurz vorgestellt: Pandas-Objekte
- Das Pandas-Series-Objekt
- Das Pandas-DataFrame-Objekt
- Das Pandas-Index-Objekt
- 14 Daten indizieren und auswählen
- Series-Daten auswählen
- DataFrame-Daten auswählen
- 15 Mit Pandas-Daten arbeiten
- UFuncs: Indexerhaltung
- UFuncs: Indexanpassung
- UFuncs: Operationen mit DataFrame und Series
- 16 Handhabung fehlender Daten
- Kompromisse beim Umgang mit fehlenden Daten
- Fehlende Daten in Pandas
- Pandas nullfähige Datentypen
- Mit Nullwerten arbeiten
- 17 Hierarchische Indizierung
- Mehrfach indizierte Series
- Methoden zum Erzeugen eines MultiIndex
- Indizierung und Slicing eines MultiIndex
- Multi-Indizes umordnen
- 18 Datenmengen kombinieren: concat und append
- Verkettung von NumPy-Arrays
- Einfache Verkettungen mit pd.concat
- 19 Datenmengen kombinieren: merge und join
- Relationale Algebra
- Join-Kategorien
- Angabe der zu verknüpfenden Spalten
- Mengenarithmetik bei Joins
- Konflikte bei Spaltennamen: das Schlüsselwort suffixes
- Beispiel: Daten von US-Bundesstaaten
- 20 Aggregation und Gruppierung
- Planetendaten
- Einfache Aggregationen in Pandas
- GroupBy: Aufteilen, Anwenden und Kombinieren
- 21 Pivot-Tabellen
- Gründe für Pivot-Tabellen
- Pivot-Tabellen von Hand erstellen
- Die Syntax von Pivot-Tabellen
- Beispiel: Geburtenraten
- 22 Vektorisierte String-Operationen
- Kurz vorgestellt: String-Operationen in Pandas
- Liste der Pandas-String-Methoden
- Beispiel: Rezeptdatenbank
- 23 Zeitreihen verwenden
- Kalenderdaten und Zeiten in Python
- Zeitreihen in Pandas: Indizierung durch Zeitangaben
- Datenstrukturen für Zeitreihen in Pandas
- Gleichförmige Sequenzen: pd.date_range
- Häufigkeiten und Abstände
- Resampling, zeitliches Verschieben und geglättete Statistik
- Beispiel: Visualisierung von Fahrradzählungen in Seattle
- 24 Leistungsstarkes Pandas: eval und query
- Der Zweck von query und eval: zusammengesetzte Ausdrücke
- Effiziente Operationen mit pandas.eval
- DataFrame.eval für spaltenweise Operationen
- Die DataFrame.query-Methode
- Performance: Wann eval und query verwendet werden sollten
- Weitere Ressourcen
- Teil IV: Visualisierung mit Matplotlib
- 25 Allgemeine Tipps zu Matplotlib
- Matplotlib importieren
- Stil einstellen
- show oder kein show? - Anzeige von Diagrammen
- 26 Einfache Liniendiagramme
- Anpassen des Diagramms: Linienfarben und -stile
- Anpassen des Diagramms: Begrenzungen
- Diagramme beschriften
- Stolpersteine in Matplotlib
- 27 Einfache Streudiagramme
- Streudiagramme mit plt.plot erstellen
- Streudiagramme mit plt.scatter erstellen
- plot kontra scatter: eine Anmerkung zur Effizienz
- Visualisierung von Messunsicherheiten
- 28 Dichtediagramme und Konturdiagramme
- Visualisierung einer dreidimensionalen Funktion
- Histogramme, Binnings und Dichte
- Zweidimensionale Histogramme und Binnings
- 29 Anpassen der Legende
- Legendenelemente festlegen
- Legenden mit Punktgrößen
- Mehrere Legenden
- 30 Anpassen von Farbskalen
- Farbskala anpassen
- Beispiel: Handgeschriebene Ziffern
- 31 Untergeordnete Diagramme
- plt.axes: untergeordnete Diagramme von Hand erstellen
- plt.subplot: untergeordnete Diagramme in einem Raster anordnen
- plt.subplots: das gesamte Raster gleichzeitig ändern
- plt.GridSpec: kompliziertere Anordnungen
- 32 Text und Beschriftungen
- Beispiel: Auswirkungen von Feiertagen auf die Geburtenzahlen in den USA
- Transformationen und Textposition
- Pfeile und Beschriftungen
- 33 Achsenmarkierungen anpassen
- Vorrangige und nachrangige Achsenmarkierungen
- Markierungen oder Beschriftungen verbergen
- Anzahl der Achsenmarkierungen verringern oder erhöhen
- Formatierung der Achsenmarkierungen
- Zusammenfassung der Formatter- und Locator-Klassen
- 34 Matplotlib anpassen: Konfigurationen und Stylesheets
- Diagramme von Hand anpassen
- Voreinstellungen ändern: rcParams
- 35 Dreidimensionale Diagramme in Matplotlib
- Dreidimensionale Punkte und Linien
- Dreidimensionale Konturdiagramme
- Drahtgitter- und Oberflächendiagramme
- Triangulation von Oberflächen
- Beispiel: Visualisierung eines Möbiusbands
- 36 Visualisierung mit Seaborn
- Seaborn-Diagramme
- Kategoriale Diagramme
- Beispiel: Ergebnisse eines Marathonlaufs
- Weiterführende Ressourcen
- Weitere Grafikbibliotheken für Python
- Teil V: Machine Learning
- 37 Was ist Machine Learning?
- Kategorien des Machine Learning
- Qualitative Beispiele für Machine-Learning-Anwendungen
- Zusammenfassung
- 38 Kurz vorgestellt: Scikit-Learn
- Datenrepräsentierung in Scikit-Learn
- Die Estimator-API
- Anwendung: Handgeschriebene Ziffern untersuchen
- Zusammenfassung
- 39 Hyperparameter und Modellvalidierung
- Überlegungen zum Thema Modellvalidierung
- Auswahl des besten Modells
- Lernkurven
- Validierung in der Praxis: Rastersuche
- Zusammenfassung
- 40 Feature Engineering
- Kategoriale Features
- Texte als Features
- Bilder als Features
- Abgeleitete Features
- Vervollständigung fehlender Daten
- Feature-Pipelines
- 41 Ausführlich: Naive Bayes-Klassifikation
- Bayes-Klassifikation
- Gaußsche naive Bayes-Klassifikation
- Multinomiale naive Bayes-Klassifikation
- Einsatzgebiete für naive Bayes-Klassifikation
- 42 Ausführlich: Lineare Regression
- Einfache lineare Regression
- Regression der Basisfunktion
- Regularisierung
- Beispiel: Vorhersage des Fahrradverkehrs
- 43 Ausführlich: Support Vector Machines
- Gründe für Support Vector Machines
- Support Vector Machines: Maximierung des Randbereichs
- Beispiel: Gesichtserkennung
- Zusammenfassung
- 44 Ausführlich: Entscheidungsbäume und Random Forests
- Gründe für Random Forests: Entscheidungsbäume
- Estimator-Ensembles: Random Forests
- Random-Forest-Regression
- Beispiel: Random Forest zur Klassifikation handgeschriebener Ziffern
- Zusammenfassung
- 45 Ausführlich: Hauptkomponentenanalyse
- Hauptkomponentenanalyse: ein Überblick
- Hauptkomponentenanalyse als Rauschfilter
- Beispiel: Eigengesichter
- Zusammenfassung
- 46 Ausführlich: Manifold Learning
- Manifold Learning: »HELLO«
- Multidimensionale Skalierung
- Nichtlineare Mannigfaltigkeiten: lokal lineare Einbettung
- Überlegungen zum Thema Manifold-Methoden
- Beispiel: Isomap und Gesichter
- Beispiel: Visualisierung der Strukturen in Zifferndaten
- 47 Ausführlich: k-Means-Clustering
- Kurz vorgestellt: der k-Means-Algorithmus
- Expectation-Maximization
- Beispiele
- 48 Ausführlich: Gaußsche Mixture-Modelle
- Gründe für GMM: Schwächen von k-Means
- EM-Verallgemeinerung: gaußsche Mixture-Modelle
- Wahl des Kovarianztyps
- GMM als Dichteschätzung
- Beispiel: GMM zum Erzeugen neuer Daten verwenden
- 49 Ausführlich: Kerndichteschätzung
- Gründe für Kerndichteschätzung: Histogramme
- Kerndichteschätzung in der Praxis
- Auswahl der Bandbreite durch Kreuzvalidierung
- Beispiel: Nicht ganz so naive Bayes-Klassifikation
- 50 Anwendung: Eine Gesichtserkennungspipeline
- HOG-Features
- HOG in Aktion: eine einfache Gesichtserkennung
- Vorbehalte und Verbesserungen
- Weitere Machine-Learning-Ressourcen
- Fußnoten
- Index
- Über den Autor
- Kolophon
System requirements
File format: PDF
Copy protection: Watermark-DRM (Digital Rights Management)
System requirements:
- Computer (Windows; MacOS X; Linux): Use the free software Adobe Reader, Adobe Digital Editions, or any other PDF viewer of your choice (see eBook Help).
- Tablet/Smartphone (Android; iOS): Install the free app Adobe Digital Editions or another reading app for eBooks, e.g., PocketBook (see eBook Help).
- E-reader: Bookeen, Kobo, Pocketbook, Sony, Tolino and many more (only limited: Kindle).
The file format PDF always displays a book page identically on any hardware. This makes PDF suitable for complex layouts such as those used in textbooks and reference books (images, tables, columns, footnotes). Unfortunately, on the small screens of e-readers or smartphones, PDFs are rather annoying, requiring too much scrolling.
This eBook uses Watermark-DRM, a „soft” copy protection. This means that there are no technical restrictions to prevent illegal distribution. However, there is a personalised watermark embedded in the eBook that can be used to identify the purchaser of the eBook in the event of misuse and to provide evidence for legal purposes.
For more information, see our eBook Help page.