Metadaten modellieren und Schnittstellen nutzen II

In dieser Lehreinheit stand die Arbeit mit OpenRefine auf dem Programm. So langsam merke ich, dass es mir nicht mehr so leicht fällt die Übersicht zu behalten, was die einzelnen Anwendungen angeht. Gefühlt bei jedem Termin wird eine neue Anwendung vorgestellt, installiert, kurz ausprobiert und schon geht’s weiter. Nach den Crosswalks-Geschichten war OpenRefine für mich aber eine willkommene Abwechslung. Hatte ich zuvor eher das Gefühl, ich füttere Daten irgendwo rein und sehe dann am Ende das Ergebnis, was «ausgespuckt» wird, konnte man bei OpenRefine nun selbst an den Daten basteln. Also im Sinne von, ich habe eine grafische Benutzeroberfläche vor mir, was mir einigermassen vertraut ist und kann diese mit «sprechenden» Befehlen, welche als Bearbeitungsfunktionen vorhanden sind, auch bedienen.
OpenRefine ist ein kostenloses open-source Tool zur Verarbeitung, Bereinigung, Analyse, Konvertierung und Anreicherung von Daten. Es ist v.a. geeignet für die Arbeit mit tabellarischen Daten, was sich auch wieder in der oben genannten Benutzerfreundlichkeit wiederspiegelt. Die Optimierung von Datensätzen kann grob in fünf Schritte eingeteilt werden:

  • Quelldaten einlesen
  • Daten analysieren
  • Daten aufräumen und optimieren
  • Daten anreichern
  • Daten im Zielformat ausgeben

Welche Problemstellungen können mit OpenRefine bearbeitet und gelöst werden. Da wäre zum Einen das Bereinigen/Vereinheitlichen von Stammdaten. So haben wir uns der Spalte «Language» angenommen, eine Textfacettierung ausgewählt und festgestellt, dass die Sprachen teils ausgeschrieben, teils abgekürzt werden. Anhand dessen, lassen sich diese Beschriftungen vereinheitlichen und dann auf alle betroffenen Zelleneinträge übertragen. OpenRefine bietet selbst eine so genannte Clusterfunktion an, welche wir dann bei den Autor*innen verwendet haben. Dabei werden ähnliche Einträge herausgesucht, z.B. Vor- und Nachname ausgeschreiben, Vorname abgekürzt und mit/ohne Punkt, Vorname und Nachname mit Punkt/Komma getrennt usw. Auch da kann man direkt manuell angeben, auf welche Version alle anderen Einträge gemerged werden sollen. So lassen sich bspw. auch Leerzeichen herauslöschen. Eine weitere Problemstellung könnte sein, dass man die Inhalte in einer Spalte zerlegen möchte. Die Zerlegung könnte z.B. dazu dienen, dass bei mehrwertigen Zellen, wie z.B. der Autor*innespalte, ein Trennzeichen zwischen den einzelnen Werten eingefügt werden soll. Die Zellen werden also getrennt, das Trennzeichen eingefügt und die Zellen wieder zusammengeführt. Die Zerlegung der Inhalte kann aber natürlich auch genau dafür verwendet werden, wie der Begriff schon sagt. Wir haben uns dafür die Spalte «Citation» vorgenommen und diese mit einem Befehl in der Skriptsprache GREL anhand der Kommata getrennt und dabei den ersten Wert, an der Stelle Null, in eine neue Spalte mit dem Namen «Journal» schreiben lassen. Siehe im Screenshot unter Punkt 7 wird der Befehl angezeigt.
Weitere Problemstellungen sind auch die Aufbereitung von strukturierten Daten, welche anhand der Umwandlung in Tabellenform vorgenommen wird. Ausserdem besteht die Möglichkeit zwei Datensätze zusammen zu führen, indem eine Schlüsselspalte erstellt wird und manuell geprüft wird, welche Felder, die gleichen Werte enthalten müssen.

Übersicht aller durchgeführten Funktionen:

grafik

Eine Funktion, welche OpenRefine ebenfalls auszeichnet, ist das Abgleichen von Tabellendaten mit Datenbanken, auch Reconciliation genannt. Dabei dient OpenRefine als Upload-Tool, um das Bearbeiten der Linked Open Data Plattform «wikidata» zu ermöglichen, aber auch weitere Linked Open Data Plattformen bieten mittlerweile die Möglichkeit der Reconciliation mit OpenRefine. Bei diesem Datenabgleich werden die zu den Zellenwerten entsprechenden verlinkten Entitäten ermittelt. Es können dabei auch Werte aus anderen Spalten als präzisierende Elemente eingesetzt werden.

Verwendete Quellen: