In eigentlich jedem Unternehmen sammeln sich in wenigen Jahren große Datenmengen an, die immer unübersichtlicher werden. Um Herr der Lage zu werden, muss man diese Daten analysieren und bereinigen.

Dabei sind die folgenden Aufgaben und Herausforderungen typisch:

  • Stammdaten vereinheitlichen.
    Über die Zeit haben sich verschiedene Benennungen für gleiche Dinge, verschiedene Schreibweisen in Benennungen, uneinheitliche Inhalte in definierten Feldern etc. zu einem nur schwer beherrschbaren Verhau angesammelt.
  • Inhalte aus einem Feld in ihre Bestandteile zerlegen.
    Beispielsweise enthält der Artikelname nicht nur die Bezeichnung, sondern auch Gewichtsangaben, die explizit benötigt werden.
  • Typische Fehler in Daten bereinigen.
    Hierzu gehören mehrfache Leerzeichen, Tippfehler, Abweichungen in der Groß- und Kleinschreibung etc.
  • Hierarchische und strukturierte Daten in Tabellenform zur weiteren Analyse aufbereiten und umwandeln.
  • Datensätze aus zwei Systemen zusammenführen, bei denen gleiche Einträge erkannt werden müssen, aber kein eindeutiger Schlüssel vorliegt.
  • Bestehende Daten durch externe und interne Quellen ergänzen, z. B. durch Fakten aus öffentlichen Quellen (Wikipedia, Google Maps).

OpenRefine – eine Open-Source-Software verspricht Hilfe

Mittlerweile gibt es zahlreiche Programme, die Sie bei der Analyse und Optimierung von Datensätzen unterstützen. Oft erfordern diese Programme eine intensive Einarbeitung und in vielen Fällen IT-Know-How zur Konfiguration für konkrete Aufgaben.

Eine kleine, smarte Lösung bietet die Open-Source-Software OpenRefine. Im Folgenden stelle ich vor, wie diese Software funktioniert.

OpenRefine wird innerhalb eines Internet-Browsers angewandt. Die zugehörige Software läuft auf dem lokalen Client des Anwenders oder einem dedizierten Server. Damit haben Sie jederzeit die Kontrolle über Ihre Daten.

Grundsätzlich läuft die Arbeit mit OpenRefine wie folgt ab:

  1. Quelldaten einlesen
  2. Daten analysieren
  3. Daten aufräumen und optimieren
  4. Daten anreichern
  5. Daten im Zielformat ausgeben

1. Quelldaten einlesen

Quelle auswählen und neues Projekt erstellen

Wie im Screenshot ersichtlich, ist OpenRefine in der Lage, eine Vielzahl gängiger Formate zu verarbeiten. Neben den typischen Vertretern wie CSV sind auch hierarchische Datenstrukturen wie XML und JSON importierbar.

Nachdem man ein neues Projekt erstellt hat, stellt man die Parameter für die Übernahme ein, um ein optimales Ergebnis zu erreichen. Eine Vorschau direkt bei der Veränderung der Parameter hilft bei der Bewertung der Änderungen. Die Daten werden eingelesen und stehen – abhängig von der Größe der Eingangsdaten – zeitnah zur weiteren Verwendung bereit.

2. Daten analysieren

Auf den ersten Blick ähnelt die Oberfläche einem Excel-Tabellenblatt. Im Unterschied zu Excel kann man in OpenRefine keine Berechnungen und Bezüge in den Zellen einfügen. Alle Funktionen zielen darauf ab, die bestehenden Daten regelbasiert zu bewerten, zu optimieren und zu erweitern – aber nicht, eine Tabellenkalkulation neu zu erfinden.

Über sogenannte Facetten können die Daten hinsichtlich verschiedener Charakteristika ausgewertet werden:

  • textbasierte Facetten
    von einfach (vergleichbar mit den Filtern in Excel auf einzelnen Spalten)
    bis spezifisch (enthaltene Wörter, Dubletten, eigene regulären Ausdrücke etc.)
  • numerische Facetten
    von einfach (Verteilung der Werte)
    bis spezifisch (individuelle Berechnungen)
  • Gegenüberstellung von Werten in sogenannten Scatterplots
  • Zeitleiste für Datumswerte
Facetten

Innerhalb dieser Facetten können die zu filternden Bereiche eingeschränkt werden. Alle Aktionen zur Änderung wirken nur auf die aktuell eingeschränkte Menge an Inhalten. Weiterhin ist es möglich, verschiedene Facetten parallel zur Filterung zu verwenden.

Ein Highlight für die Analyse stellt die Funktion zum Clustern von Inhalten dar. Damit kann man Inhalte einer Spalte mit verschiedenen Verfahren analysieren und gruppieren. Zusätzlich stehen Standardfunktionen zur Verfügung wie Sortieren und Filtern.

Cluster-Analyse

Wie Sie die Daten aufräumen und optimieren, anreichern und in das Zielformat ausgeben, stelle ich Ihnen im zweiten Teil des Blogbeitrags vor.