Sicher verstaut - Deduplizierung spart Platz, Cloud-Backup für Windows, Areca sichert kostenlos. ADMIN 01/14 stellt Backups für Profis mit und ohne Cloud ... (mehr)

Immer weiter

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")

Ausblick

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).

Abbildung 3: Mithilfe von Matplotlib visualisiert Pandas Datensätze.
Abbildung 4: Die Pandas-Dokumentation führt alle Möglichkeiten der Bibliothek auf.

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.

comments powered by Disqus
Mehr zum Thema

Mit Joblib Python-Programme parallelisieren und memorisieren

Parallelisierung, Memorization sowie Speichern und Laden von Objekten: Die Python-Bibliothek Joblib erledigt häufige Problemstellungen im Handumdrehen und lässt Programmierer damit sofort zum Kern ihrer Arbeit vordringen.

Artikel der Woche

Eigene Registry für Docker-Images

Wer selber Docker-Images herstellt, braucht auch eine eigene Registry. Diese gibt es ebenfalls als Docker-Image, aber nur mit eingeschränkter Funktionalität. Mit einem Auth-Server wird daraus ein brauchbares Repository für Images. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Google+

Ausgabe /2019