<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Transformation | FDMLab@LABW</title><link>https://fdmlab.landesarchiv-bw.de/tag/transformation/</link><atom:link href="https://fdmlab.landesarchiv-bw.de/tag/transformation/index.xml" rel="self" type="application/rss+xml"/><description>Transformation</description><generator>Wowchemy (https://wowchemy.com)</generator><language>de-de</language><lastBuildDate>Fri, 01 Apr 2022 00:00:00 +0000</lastBuildDate><image><url>https://fdmlab.landesarchiv-bw.de/media/sharing.jpg</url><title>Transformation</title><link>https://fdmlab.landesarchiv-bw.de/tag/transformation/</link></image><item><title>Workshop - Daten mit OpenRefine umwandeln</title><link>https://fdmlab.landesarchiv-bw.de/workshop/openrefine-einsteiger/03-transformieren/</link><pubDate>Fri, 01 Apr 2022 00:00:00 +0000</pubDate><guid>https://fdmlab.landesarchiv-bw.de/workshop/openrefine-einsteiger/03-transformieren/</guid><description>&lt;p>Wir lernen verschiedene Methoden kennen um Daten aufzuräumen und umzuwandeln.&lt;/p>
&lt;blockquote>
&lt;p>Daten transformieren in der &lt;a href="https://docs.openrefine.org/manual/transforming" target="_blank" rel="noopener">OpenRefine Dokumentation&lt;/a>.&lt;/p>
&lt;/blockquote>
&lt;div class="alert alert-note">
Dieser Workshop wurde erstellt mit OpenRefine Version 3.5.0.&lt;br>
Dieser Workshop wurde zuletzt getestet mit OpenRefine Version &lt;strong>3.9.3&lt;/strong>.
&lt;/div>
&lt;h2 id="hintergrund">Hintergrund&lt;/h2>
&lt;p>OpenRefine bietet unterschiedliche Arten an Daten umzuwandeln.
Dies kann manuell auf Zellebene passieren, in einem &amp;ldquo;Facet&amp;rdquo;, auf Spaltenebene oder für bestimmte Aktionen auf dem kompletten Datensatz.&lt;/p>
&lt;p>In den folgenden Aufgaben werden wir nun aktiv Daten filtern, umwandeln und zusammenführen.&lt;/p>
&lt;h2 id="aufgabe-1-leere-zeilen-identifizieren-und-löschen">Aufgabe 1: Leere Zeilen identifizieren und löschen&lt;/h2>
&lt;p>Wie in &lt;a href="https://fdmlab.landesarchiv-bw.de/workshop/openrefine-einsteiger/02-filtern-und-sortieren/#aufgabe-3-facets-auf-alle-spalten">Aufgabe 3 in 02 Filtern und Sortieren&lt;/a> verwenden wir das &amp;ldquo;Facet by blank (null or empty string)&amp;rdquo; um Leerzeilen zu identifizieren.
Denn in den 4.000 Einträgen (rows) sollte es 5 Leerzeilen geben.
Diese werden jedoch nicht angezeigt, da sie nicht leer sind, sondern Leerzeichen beinhalten.&lt;/p>
&lt;p>Die Leerzeichen können wir global über
&amp;ldquo;All&amp;quot;
&lt;i class="far fa-caret-square-down pr-1 fa-fw">&lt;/i>&amp;quot;Edit all columns&amp;quot;
&lt;i class="fas fa-caret-right pr-1 fa-fw">&lt;/i>&amp;quot;Trim leading and trailing whitespace&amp;rdquo;
entfernen.&lt;/p>
&lt;figure id="figure-bildschirmfoto-von-openrefine-mit-blank-facet">
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="Bildschirmfoto von OpenRefine mit Blank Facet." srcset="
/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_facet_blank_hu378b95591ddb24bf1fc8cc32ccdc3103_28410_32164c41a1792ed7b6bbcdfdcbf4f0e4.webp 400w,
/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_facet_blank_hu378b95591ddb24bf1fc8cc32ccdc3103_28410_66f621a0f4b2860544a20fe42bcc1e49.webp 760w,
/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_facet_blank_hu378b95591ddb24bf1fc8cc32ccdc3103_28410_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://fdmlab.landesarchiv-bw.de/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_facet_blank_hu378b95591ddb24bf1fc8cc32ccdc3103_28410_32164c41a1792ed7b6bbcdfdcbf4f0e4.webp"
width="760"
height="231"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;figcaption data-pre="Abbildung&amp;nbsp;" data-post=":&amp;nbsp;" class="numbered">
Bildschirmfoto von OpenRefine mit Blank Facet.
&lt;/figcaption>&lt;/figure>
&lt;p>Anschließend können wir, wie in Abbildung 1, mit dem &amp;ldquo;Facet by blank (null or empty string)&amp;rdquo; die Leerzeilen auswählen und via
&amp;ldquo;All&amp;quot;
&lt;i class="far fa-caret-square-down pr-1 fa-fw">&lt;/i>&amp;quot;Edit rows&amp;quot;
&lt;i class="fas fa-caret-right pr-1 fa-fw">&lt;/i>&amp;quot;Remove matching rows&amp;rdquo;
entfernen.&lt;/p>
&lt;p>Gehen Sie noch einmal zurück zu den Bildschirmfotos der Importeinstellungen in &lt;a href="https://fdmlab.landesarchiv-bw.de/workshop/openrefine-einsteiger/01-projekte-laden/">Projekte in OpenRefine laden und verwalten&lt;/a> und vergleichen diese für Aufgabe 1 und 2.&lt;/p>
&lt;p>Wir können Probleme mit Leerzeilen schon beim Importieren lösen, indem wir, wie bei Aufgabe 2, das Kontrollkästchen bei &amp;ldquo;Trim leading &amp;amp; trailing whitespace from strings&amp;rdquo; aktivieren und das Kontrollkästchen bei &amp;ldquo;Store blank rows&amp;rdquo; abwählen.
Das ist jedoch nicht immer möglich, oder manchmal wird es vergessen.&lt;/p>
&lt;h2 id="aufgabe-2-geschlechter-vereinheitlichen">Aufgabe 2: Geschlechter vereinheitlichen&lt;/h2>
&lt;p>Die Geschlechtsbezeichnungen in der Spalte &amp;ldquo;Geschlecht (m/w)&amp;rdquo; sind sehr uneinheitlich.
Wir wollen dies vereinheitlichen, so dass überall nur noch die Werte &amp;ldquo;m&amp;rdquo; und &amp;ldquo;w&amp;rdquo; stehen.&lt;/p>
&lt;p>Dafür testen wir mehrere Methoden.&lt;/p>
&lt;h3 id="1-einzeln-bearbeiten">1. Einzeln bearbeiten&lt;/h3>
&lt;p>Wenn wir mit der Maus über eine Zelle gehen, dann erscheint wie in Abbildung 2 eine blaue Bedienfläche mit der Bezeichnung &amp;ldquo;edit&amp;rdquo;.
Darüber können wir einzelne Zellen bearbeiten.&lt;/p>
&lt;figure id="figure-bildschirmfoto-von-edit-bedienfläche-in-zelle">
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="Bildschirmfoto von Edit Bedienfläche in Zelle." srcset="
/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_geschlecht_edit_cell_hu9003179a9c2d1df58f6647238692909f_1878_5043ab5c026ba3cf3f00d682d398b4f2.webp 400w,
/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_geschlecht_edit_cell_hu9003179a9c2d1df58f6647238692909f_1878_4d16fa3e640c9369efe7485262fd8b09.webp 760w,
/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_geschlecht_edit_cell_hu9003179a9c2d1df58f6647238692909f_1878_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://fdmlab.landesarchiv-bw.de/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_geschlecht_edit_cell_hu9003179a9c2d1df58f6647238692909f_1878_5043ab5c026ba3cf3f00d682d398b4f2.webp"
width="123"
height="42"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;figcaption data-pre="Abbildung&amp;nbsp;" data-post=":&amp;nbsp;" class="numbered">
Bildschirmfoto von Edit Bedienfläche in Zelle.
&lt;/figcaption>&lt;/figure>
&lt;details class="spoiler " id="spoiler-9">
&lt;summary>&lt;strong>Hinweise:&lt;/strong>&lt;/summary>
&lt;p>&lt;ul>
&lt;li>Die Bearbeitung auf diesem Weg kann zwar rückgängig gemacht, aber &lt;strong>nicht&lt;/strong> als Aktion exportiert werden!&lt;/li>
&lt;/ul>
&lt;/p>
&lt;/details>
&lt;h3 id="2-im-facet-bearbeiten">2. Im Facet bearbeiten&lt;/h3>
&lt;p>Wenn wir mit der Maus über einen Wert im Facet gehen, dann erscheint wie in Abbildung 3 ein blauer &amp;ldquo;edit&amp;rdquo; Link.
Darüber können wir alle Zellen mit diesem Wert in der Spalte gleichzeitig bearbeiten.&lt;/p>
&lt;figure id="figure-bildschirmfoto-von-edit-bedienfläche-in-facet">
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="Bildschirmfoto von Edit Bedienfläche in Facet." srcset="
/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_facet_geschlecht_hu080af32c4dc2c9b0fcea7c796a263dec_11914_944b096cb01d3aaa514dd3112e2eac0e.webp 400w,
/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_facet_geschlecht_hu080af32c4dc2c9b0fcea7c796a263dec_11914_de525552bfa6b853e0c335c741dbdc6c.webp 760w,
/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_facet_geschlecht_hu080af32c4dc2c9b0fcea7c796a263dec_11914_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://fdmlab.landesarchiv-bw.de/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_facet_geschlecht_hu080af32c4dc2c9b0fcea7c796a263dec_11914_944b096cb01d3aaa514dd3112e2eac0e.webp"
width="288"
height="432"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;figcaption data-pre="Abbildung&amp;nbsp;" data-post=":&amp;nbsp;" class="numbered">
Bildschirmfoto von Edit Bedienfläche in Facet.
&lt;/figcaption>&lt;/figure>
&lt;h3 id="3-ersetzen-in-der-spalte">3. Ersetzen in der Spalte&lt;/h3>
&lt;p>Im Spaltenmenü findet sich unter
&amp;ldquo;Geschlecht (m/w)&amp;ldquo;
&lt;i class="far fa-caret-square-down pr-1 fa-fw">&lt;/i>&amp;quot;Edit cells&amp;quot;
&lt;i class="fas fa-caret-right pr-1 fa-fw">&lt;/i>&amp;quot;Replace&amp;rdquo;
ein Dialog, mit dem in dieser Spalte Ersetzungen durchgeführt werden können.&lt;/p>
&lt;h3 id="4-textfilter-und-transform">4. Textfilter und Transform&lt;/h3>
&lt;p>Eine andere Methode ist eine Kombination aus Textfilter und &amp;ldquo;Transform&amp;rdquo;.
Im Spaltenmenü wählen wir
&amp;ldquo;Geschlecht (m/w)&amp;ldquo;
&lt;i class="far fa-caret-square-down pr-1 fa-fw">&lt;/i>&amp;quot;Textfilter&amp;rdquo;
und geben im Eingabefeld des Filters nur den Buchstaben &amp;ldquo;w&amp;rdquo; ein, der praktischerweise in &amp;ldquo;männlich&amp;rdquo; nicht vorkommt.&lt;/p>
&lt;p>Im &amp;ldquo;Text Facet&amp;rdquo; für die Spalte Geschlecht, sehen wir analog zu Abbildung 4 die gefilterten Werte.&lt;/p>
&lt;figure id="figure-bildschirmfoto-mit-kombination-aus-facet-und-textfilter">
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="Bildschirmfoto mit Kombination aus Facet und Textfilter." srcset="
/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_facet_filter_geschlecht_hu06f838c25ee978cac463847e92f7f1d7_12086_6bf18f78c0133e7c1a4f78bc23b9db95.webp 400w,
/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_facet_filter_geschlecht_hu06f838c25ee978cac463847e92f7f1d7_12086_bbe7c44877f809d106d29a1505f0aeaa.webp 760w,
/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_facet_filter_geschlecht_hu06f838c25ee978cac463847e92f7f1d7_12086_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://fdmlab.landesarchiv-bw.de/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_facet_filter_geschlecht_hu06f838c25ee978cac463847e92f7f1d7_12086_6bf18f78c0133e7c1a4f78bc23b9db95.webp"
width="288"
height="524"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;figcaption data-pre="Abbildung&amp;nbsp;" data-post=":&amp;nbsp;" class="numbered">
Bildschirmfoto mit Kombination aus Facet und Textfilter.
&lt;/figcaption>&lt;/figure>
&lt;p>Anschließend rufen wir den Dialog zum Transformieren über das Spaltenmenü via
&amp;ldquo;Geschlecht (m/w)&amp;ldquo;
&lt;i class="far fa-caret-square-down pr-1 fa-fw">&lt;/i>&amp;quot;Edit cells&amp;quot;
&lt;i class="fas fa-caret-right pr-1 fa-fw">&lt;/i>&amp;quot;Transform&amp;hellip;&amp;rdquo;
auf.&lt;/p>
&lt;p>In dem Dialog könnte komplexer Code geschrieben werden, wir wollen den Inhalt jeder Zelle jedoch einfach mit dem Wert &lt;code>&amp;quot;w&amp;quot;&lt;/code> ersetzen. Die Anführungszeichen sind wichtig, da wir dadurch OpenRefine mitteilen, dass wir den Wert &lt;code>w&lt;/code> meinen, und keinen Programmcode.&lt;/p>
&lt;h2 id="aufgabe-3-spalte-akad-gradtitel-vereinheitlichen">Aufgabe 3: Spalte akad. Grad/Titel vereinheitlichen&lt;/h2>
&lt;p>In der Spalte &amp;ldquo;akad. Grad/Titel&amp;rdquo; sind die akademischen Grade uneinheitlich geschrieben (siehe auch Abbildung 5).
Überlegen Sie, welche der in Aufgabe 2 gelernten Methoden hier geeignet wäre und vereinheitlichen Sie die Titel.&lt;/p>
&lt;figure id="figure-bildschirmfoto-mit-text-facet-auf-spalte-titel">
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="Bildschirmfoto mit Text Facet auf Spalte Titel." srcset="
/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_facet_titel_hud98cf43111f0fa64f872a053c322fb7f_11328_30b0c4a31aab0daf18f39dcf2dc2628a.webp 400w,
/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_facet_titel_hud98cf43111f0fa64f872a053c322fb7f_11328_099667ca615f430511ba7213d8baa03e.webp 760w,
/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_facet_titel_hud98cf43111f0fa64f872a053c322fb7f_11328_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://fdmlab.landesarchiv-bw.de/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_facet_titel_hud98cf43111f0fa64f872a053c322fb7f_11328_30b0c4a31aab0daf18f39dcf2dc2628a.webp"
width="288"
height="435"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;figcaption data-pre="Abbildung&amp;nbsp;" data-post=":&amp;nbsp;" class="numbered">
Bildschirmfoto mit Text Facet auf Spalte Titel.
&lt;/figcaption>&lt;/figure>
&lt;h2 id="aufgabe-4-spalten-auftrennen">Aufgabe 4: Spalten auftrennen&lt;/h2>
&lt;p>Bei den Ortsangaben sind der Ortsname und die GND-ID des Ortes mit &lt;code>|&lt;/code> getrennt in einer Zelle.
Wir wollen die Spalte &amp;ldquo;Geburtsort&amp;rdquo; auftrennen, so dass wir jeweils eine Spalte mit dem Ortsnamen und eine mit der zugehörigen GND-ID haben.&lt;/p>
&lt;p>Dafür verwenden wir im Spaltenmenü den Dialog
&amp;ldquo;Geburtsort&amp;quot;
&lt;i class="far fa-caret-square-down pr-1 fa-fw">&lt;/i>&amp;quot;Edit column&amp;quot;
&lt;i class="fas fa-caret-right pr-1 fa-fw">&lt;/i>&amp;quot;Split into several columns&amp;hellip;&amp;rdquo;
mit den in Abbildung 6 gezeigten Einstellungen.&lt;/p>
&lt;figure id="figure-bildschirmfoto-vom-dialog-zum-auftrennen-von-spalten">
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="Bildschirmfoto vom Dialog zum Auftrennen von Spalten." srcset="
/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_split_column_hua24e41abaf33f0085585e637446515dd_15506_5aa6213ad2f873d5991a6d07d190fe34.webp 400w,
/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_split_column_hua24e41abaf33f0085585e637446515dd_15506_905ab864be45f409dc7f9cbca87ce243.webp 760w,
/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_split_column_hua24e41abaf33f0085585e637446515dd_15506_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://fdmlab.landesarchiv-bw.de/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_split_column_hua24e41abaf33f0085585e637446515dd_15506_5aa6213ad2f873d5991a6d07d190fe34.webp"
width="602"
height="321"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;figcaption data-pre="Abbildung&amp;nbsp;" data-post=":&amp;nbsp;" class="numbered">
Bildschirmfoto vom Dialog zum Auftrennen von Spalten.
&lt;/figcaption>&lt;/figure>
&lt;p>Anschließend entfernen wir überflüssige Leerzeichen via
&amp;ldquo;Geburtsort&amp;quot;
&lt;i class="far fa-caret-square-down pr-1 fa-fw">&lt;/i>&amp;quot;Edit cells&amp;quot;
&lt;i class="fas fa-caret-right pr-1 fa-fw">&lt;/i>&amp;quot;Common transforms&amp;quot;
&lt;i class="fas fa-caret-right pr-1 fa-fw">&lt;/i>&amp;quot;Trim leading and trailing whitespace&amp;rdquo;
und benennen die neuen Spalten entsprechend in &amp;ldquo;Geburtsort&amp;rdquo; und &amp;ldquo;Geburtsort (GND-ID)&amp;rdquo; um.&lt;/p>
&lt;details class="spoiler " id="spoiler-24">
&lt;summary>&lt;strong>Hinweise:&lt;/strong>&lt;/summary>
&lt;p>&lt;ul>
&lt;li>Mit Hilfe des regulären Ausdrucks &lt;code>\s*\|\s*&lt;/code> hätten wir die Leerzeichen beim Aufsplitten auch direkt entfernen können.&lt;/li>
&lt;li>Vielleicht sind Ihnen Zeilen aufgefallen, wo anstelle des Ortes nur die GND-ID steht. Um diese kümmern wir uns später.&lt;/li>
&lt;/ul>
&lt;/p>
&lt;/details>
&lt;h2 id="aufgabe-5-spalten-zusammenführen">Aufgabe 5: Spalten zusammenführen&lt;/h2>
&lt;p>Beim Sterbedatum haben wir das umgekehrte Problem. Hier ist das Datum in drei Spalten aufgeteilt, wir wollen jedoch eine Spalte haben.
Bevor wir die Spalten zusammenführen, prüfen wir, ob die Werte in den einzelnen Spalten sinnvoll sind, und korrigieren die Werte bei Bedarf.&lt;/p>
&lt;p>Anschließend rufen wir im Spaltenmenü den Dialog zum Zusammenführen von Spalten auf
&amp;ldquo;Todesdatum (Tag)&amp;ldquo;
&lt;i class="far fa-caret-square-down pr-1 fa-fw">&lt;/i>&amp;quot;Edit column&amp;quot;
&lt;i class="fas fa-caret-right pr-1 fa-fw">&lt;/i>&amp;quot;Join columns&amp;hellip;&amp;rdquo;
mit den in Abbildung 7 gezeigten Einstellungen.&lt;/p>
&lt;figure id="figure-bildschirmfoto-vom-dialog-zum-zusammenführen-von-spalten">
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="Bildschirmfoto vom Dialog zum Zusammenführen von Spalten." srcset="
/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_join_columns_hu5409e89bb940588afaebe13a709cb939_35082_072651385d676f82fd4dd4c0b9b198b2.webp 400w,
/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_join_columns_hu5409e89bb940588afaebe13a709cb939_35082_eb0b404a55e10512c6b9398741113963.webp 760w,
/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_join_columns_hu5409e89bb940588afaebe13a709cb939_35082_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://fdmlab.landesarchiv-bw.de/workshop/openrefine-einsteiger/03-transformieren/screenshot_openrefine_join_columns_hu5409e89bb940588afaebe13a709cb939_35082_072651385d676f82fd4dd4c0b9b198b2.webp"
width="760"
height="437"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;figcaption data-pre="Abbildung&amp;nbsp;" data-post=":&amp;nbsp;" class="numbered">
Bildschirmfoto vom Dialog zum Zusammenführen von Spalten.
&lt;/figcaption>&lt;/figure>
&lt;h2 id="aufgabe-6-datum-vereinheitlichen">Aufgabe 6: Datum vereinheitlichen&lt;/h2>
&lt;p>In der Spalte &amp;ldquo;Geburtsdatum (exakt)&amp;rdquo; gibt es mehrere Formate für das Geburtsdatum:&lt;/p>
&lt;ul>
&lt;li>&amp;ldquo;31.03.1920&amp;rdquo;&lt;/li>
&lt;li>&amp;ldquo;31-03-1920&amp;rdquo;&lt;/li>
&lt;li>&amp;ldquo;31. März 1920&amp;rdquo;&lt;/li>
&lt;/ul>
&lt;p>OpenRefine bietet verschiedene Funktionen an, um mit Daten zu arbeiten.&lt;/p>
&lt;blockquote>
&lt;p>Datumsfunktionen in der &lt;a href="https://docs.openrefine.org/manual/grelfunctions#date-functions" target="_blank" rel="noopener">OpenRefine Dokumentation&lt;/a>.&lt;/p>
&lt;/blockquote>
&lt;p>Um die Daten in ein einheitliches Format zu bringen, wandeln wir sie zuerst in ein Datumsobjekt um und schreiben sie anschließend als Text wieder raus.&lt;/p>
&lt;p>Dafür müssen wir OpenRefine noch mitteilen, wie die Eingabe- und Zielformate aussehen:&lt;/p>
&lt;ul>
&lt;li>&amp;ldquo;dd.MM.yyyy&amp;rdquo;&lt;/li>
&lt;li>&amp;ldquo;dd-MM-yyyy&amp;rdquo;&lt;/li>
&lt;li>&amp;ldquo;dd. MMMM yyyy&amp;rdquo;&lt;/li>
&lt;/ul>
&lt;p>Um die Daten umzuwandeln öffnen wir den Dialog zum Transformieren über das Spaltenmenü von
&amp;ldquo;Geburtsdatum (exakt)&amp;ldquo;
&lt;i class="far fa-caret-square-down pr-1 fa-fw">&lt;/i>&amp;quot;Edit cells&amp;quot;
&lt;i class="fas fa-caret-right pr-1 fa-fw">&lt;/i>&amp;quot;Transform&amp;rdquo;
und verwenden den Ausdruck:&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-javascript" data-lang="javascript">&lt;span class="line">&lt;span class="cl">&lt;span class="nx">value&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">toDate&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s2">&amp;#34;dd.MM.yyyy&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="s2">&amp;#34;dd-MM-yyyy&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="s2">&amp;#34;dd. MMMM yyyy&amp;#34;&lt;/span>&lt;span class="p">).&lt;/span>&lt;span class="nx">toString&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s2">&amp;#34;dd.MM.yyyy&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;details class="spoiler " id="spoiler-30">
&lt;summary>&lt;strong>Hinweise:&lt;/strong>&lt;/summary>
&lt;p>&lt;ul>
&lt;li>OpenRefine bietet die Möglichkeit Programmcode zu nutzen um Transformationen durchzuführen. Dazu gehören &lt;a href="https://docs.openrefine.org/manual/jythonclojure" target="_blank" rel="noopener">Clojure/Python&lt;/a> und die &lt;a href="https://docs.openrefine.org/manual/expressions" target="_blank" rel="noopener">General Refine Expression Language (GREL)&lt;/a>.&lt;/li>
&lt;li>Die Datumsumwandlung gehört zu den Funktionen von GREL, die wir auf Grund ihrer Relevanz in diesen Einführungsworkshop mit aufgenommen haben.&lt;/li>
&lt;/ul>
&lt;/p>
&lt;/details>
&lt;h2 id="aufgabe-7-daten-mit-filter-auf-eine-andere-spalte-übertragen">Aufgabe 7: Daten mit Filter auf eine andere Spalte übertragen&lt;/h2>
&lt;p>In der Spalte &amp;ldquo;Geburtsort&amp;rdquo; ist bei einem Ort die GND-ID verrutscht und der Ortsname verloren gegangen.
Bei dem Ort handelt es sich um &amp;ldquo;Breslau (Polen)&amp;rdquo; mit der GND-ID &amp;ldquo;4008216-7&amp;rdquo;.&lt;/p>
&lt;p>Um dies zu beheben erstellen wir ein &amp;ldquo;Text Facet&amp;rdquo; für die Spalte &amp;ldquo;Geburtsort&amp;rdquo; und filtern nur die Einträge mit &amp;ldquo;4008216-7&amp;rdquo;.
Es gibt nun verschiedene Möglichkeiten die Daten in die Spalte &amp;ldquo;Geburtsort (GND-ID)&amp;rdquo; zu übertragen.&lt;/p>
&lt;ol>
&lt;li>Zellen einzeln bearbeiten&lt;/li>
&lt;li>Ein weiteres &amp;ldquo;Text Facet&amp;rdquo; für die Spalte &amp;ldquo;Geburtsort (GND-ID)&amp;rdquo; erstellen und in beiden die Werte gesammelt bearbeiten.&lt;/li>
&lt;li>Die Werte via Textfilter oder &amp;ldquo;Text Facet&amp;rdquo; filtern und die Spalten zusammenführen (
&amp;ldquo;Geburtsort&amp;quot;
&lt;i class="far fa-caret-square-down pr-1 fa-fw">&lt;/i>&amp;quot;Edit column&amp;quot;
&lt;i class="fas fa-caret-right pr-1 fa-fw">&lt;/i>&amp;quot;Join columns&amp;hellip;&amp;rdquo;),
ohne die Original Spalte zu löschen.&lt;/li>
&lt;li>Im Spaltenmenü via
&amp;ldquo;Geburtsort (GND-ID)&amp;ldquo;
&lt;i class="far fa-caret-square-down pr-1 fa-fw">&lt;/i>&amp;quot;Edit cells&amp;quot;
&lt;i class="fas fa-caret-right pr-1 fa-fw">&lt;/i>&amp;quot;Transform&amp;rdquo;
die Daten aus der anderen Spalte mit dem Ausdruck &lt;code>row.cells[&amp;quot;Geburtsort&amp;quot;].value&lt;/code> kopieren.&lt;/li>
&lt;/ol>
&lt;p>Alle Varianten haben ihre Berechtigung und je nach Kontext oder Anwendungsfall eignet sich die ein oder andere eher.&lt;/p>
&lt;h2 id="fazit">Fazit&lt;/h2>
&lt;p>Die Kombination aus Facets/Filtern und den Bearbeitungsmöglichkeiten machen OpenRefine zu unserem Liebling beim Aufräumen von Daten (&lt;em>Data Cleaning&lt;/em>). Manchmal vermissen wir es jedoch größere Bereiche manuell auszuwählen und in eine andere Spalte zu Verschieben.&lt;/p>
&lt;hr>
&lt;p>Im nächsten Teil lernen wir verschiedene Exportmöglichkeiten in OpenRefine kennen.&lt;/p>
&lt;ul class="cta-group">
&lt;li>
&lt;a href="https://fdmlab.landesarchiv-bw.de/workshop/openrefine-einsteiger/04-exportieren" class="btn btn-primary px-3 py-3">04 Daten mit OpenRefine exportieren&lt;/a>
&lt;/li>
&lt;/ul></description></item></channel></rss>