pandas IO tools¶
pandas verfügt über eine Reihe von Funktionen zum Lesen von Tabellendaten als DataFrame-Objekt, darunter
Funktion |
Beschreibung |
---|---|
lädt CSV-Daten aus einer Datei, einer URL oder einem dateiähnlichen Objekt; üblicherweise wird ein Komma als Trennzeichen verwendet |
|
liest fwf, also Daten im Spaltenformat mit fester Breite |
|
liest Daten aus der Zwischenablage und übergibt sie an
|
|
liest Tabellendaten aus einer Excel XLS- oder XLSX-Datei |
|
liest HDF5-Dateien |
|
liest alle Tabellen aus dem angegebenen HTML-Dokument |
|
liest Daten aus einer JSON-Datei |
|
liest das Feather-Binärdateiformat |
|
liest Apache ORC-Binärdaten |
|
liest das Apache Parquet-Binärdateiformat |
|
liest ein beliebiges Objekt, das im Python-Pickle-Format gespeichert ist |
|
liest einen SAS-Datensatz |
|
liest eine von SPSS erstellte Datendatei |
|
liest die Ergebnisse einer SQL-Abfrage (mit SQLAlchemy) als pandas DataFrame |
|
liest eine ganze SQL-Tabelle (mit
SQLAlchemy) als pandas DataFrame
(entspricht einer Abfrage, die alles in dieser Tabelle
mit |
|
liest einen Datensatz aus dem Stata-Dateiformat |
Siehe auch
- pandas I/O API
Die pandas I/O API ist eine Sammlung von
reader
-Funktionen, die ein pandas-Objekt zurückgeben. Meist stehen auch entsprechendewrite
-Methoden zur Verfügung.
Zunächst werde ich einen Überblick über einige dieser Funktionen geben, die dazu gedacht sind, Text- und Exceldaten in einen pandas-DataFrame zu konvertieren: CSV, JSON und Excel. Dabei lassen sich die optionalen Argumente für diese Funktionen in folgende Kategorien einteilen:
- Indizierung
Können eine oder mehrere Spalten den zurückgegebenen DataFrame erschließen, und ob die Spaltennamen aus der Datei, den von euch angegebenen Argumenten oder gar nicht abgerufen werden sollen.
- Typinferenz und Datenkonvertierung
Dazu gehören die benutzerdefinierten Wertkonvertierungen und die benutzerdefinierte Liste der Markierungen für fehlende Werte.
- Parsen von Datum und Uhrzeit
Dies umfasst die Kombinationsfähigkeit, einschließlich der Kombination von Datums- und Zeitinformationen, die über mehrere Spalten verteilt sind, in einer einzigen Spalte im Ergebnis.
- Iteration
Unterstützung für die Iteration über Teile von sehr großen Dateien.
- Probleme mit unsauberen Daten
Überspringen von Zeilen oder Fußzeilen, Kommentaren oder anderen Kleinigkeiten wie numerischen Daten mit durch Kommas getrennte Tausender.
Da Daten in der realen Welt sehr unübersichtlich sein können, haben einige der
Datenladefunktionen (insbesondere read_csv
) im Laufe der Zeit eine lange
Liste optionaler Argumente angehäuft. Die Online-Dokumentation von pandas
enthält viele Beispiele für die einzelnen Funktionen.
Einige dieser Funktionen, wie pandas.read_csv
, führen eine Typinferenz
durch, da die Datentypen der Spalten nicht Teil des Datenformats sind. Das
bedeutet, dass ihr nicht unbedingt angeben müsst, welche Spalten numerisch,
integer, boolesch oder string sind. Bei anderen Datenformaten wie HDF5, ORC und
Parquet sind die Datentypinformationen hingegen bereits in das Format
eingebettet.