Pandas spart nicht an weiteren Hilfsfunktionen zur Datenmanipulation. Die Dataframe-Methoden
»stack()
«
und
»unstack()
«
etwa drehen ein Dataframe so, dass die Spalten zu Zeilen werden und umgekehrt.
Zum Säubern vorhandener Daten bietet Pandas etwa
»drop_duplicates()
«
an, dass aus Series- und Dataframe-Objekten doppelte Einträge löscht.
»replace()
«
hingegen durchsucht alle Einträge nach einem bestimmten Wert und ersetzt die Treffer durch einen anderen:
series.replace('a', 'b')
Allgemeiner arbeitet die
»map()
«
-Methode. Sie nimmt eine Funktion oder ein Dictionary entgegen und ändert die Einträge eines Datenobjekts automatisch. Das folgende Beispiel etwa verwandelt mittels der Funktion
»str.lower()
«
alle Einträge einer Spalte in Kleinbuchstaben:
dataframe['a'].map(str.lower)
Python-gemäß erlaubt Pandas hier auch die Übergabe einer anonymen Lambda-Funktion.
An dieser Stelle zeigt sich auch die Stärke der durch NumPy ermöglichten Vektorisierung. Die Series-Klasse enthält unter anderem ein eigenes Attribute
»str
«
für die Verarbeitung von Strings, die ohne zeilenweise Iteration auskommt. Beispielsweise findet dieser Befehl alle Einträge, die den String
»ADMIN
«
enthalten:
series.str.contains("ADMIN")
Pandas bietet zahlreiche weitere bislang nicht angesprochene Methoden für die Datenmanipulation, auch manches hier nicht erwähnte Argument macht manche Funktionen in mehr oder weniger alltäglichen Anwendungsfällen zu nützlichen Helfern. Des Weiteren bedient sich Pandas etwa über die
»plot()
«
-Methode (
Abbildung 3
) der Bibliothek Matplotlib
[4]
, um Dataframes und Series zu visualisieren. Die Pandas-Dokumentation enthält eine vollständige Referenz (
Abbildung 4
).
Die Datenbibliothek Pandas zeigt, dass Python vor allem dank der NumPy-Grundlage reif ist, um es mit den kompilierten Sprachen in puncto Geschwindigkeit aufzunehmen, während es Vorteile wie eine intuitive Syntax und verschiedene interaktive Shells mitbringt.
Infos