Wie verdoppelte ich die Anzahl der Zeilen in einer Tableau-Datenquelle ohne Duplikate anzulegen?
- Grundidee: Kombination mit einer Hilfstabelle oder Cross Join
- Praktische Umsetzung in Tableau
- Vermeidung von Duplikaten und Beibehaltung von Einzigartigkeit
- Alternative Methoden
- Zusammenfassung
In Tableau besteht oft die Herausforderung, die Anzahl der Zeilen in einer Datenquelle zu erhöhen, ohne dabei
einfache Duplikate der vorhandenen Datensätze zu erzeugen. Ein naiver Ansatz, die Daten einfach zu kopieren und
anzuhängen, würde das Duplikat-Problem erzeugen und ist oft nicht zielführend, da Tableau dann identische
Datensätze verarbeitet. Stattdessen gibt es mehrere kreative Methoden, wie man die Datenquelle in Tableau so
manipulieren kann, dass die Anzahl der Zeilen quasi verdoppelt wird, während die Daten inhaltlich sinnvoll und
Grundidee: Kombination mit einer Hilfstabelle oder Cross Join
Ein bewährter Ansatz ist das Erzeugen eines sogenannten Cross Joins (Kartesisches Produkt) mit einer kleinen Hilfstabelle, die speziell dafür angelegt wird, die Anzahl der Zeilen zu multiplizieren, ohne dabei die ursprünglichen Inhalte zu duplizieren. Beispielhaft könnte eine Hilfstabelle aus zwei Zeilen bestehen, die einfach die Werte 1 und 2 in einer Spalte enthält.
Wenn man diese Hilfstabelle mit der ursprünglichen Datenquelle per Cross Join kombiniert, entsteht für jede Zeile der Originaltabelle nun genau eine weitere Zeile, die mit dem Wert 2 in der Hilfstabelle ergänzt ist – so entsteht eine Verdopplung der Zeilenanzahl.
Praktische Umsetzung in Tableau
Tableau selbst unterstützt in den Datenverbindungen leider keinen direkten Cross Join per Drag & Drop. Man kann jedoch im Tableau-Datenquellenbereich zwei Verbindungen (Tableaus Datenquellen) miteinander kombinieren, etwa über eine benutzerdefinierte Verbindung wie eine Textdatei mit zwei Zeilen, die man als Hilfstabelle mit der Originaldatenquelle verbindet.
Im Verbindungs-Editor definiert man dann die Join-Bedingungen so, dass kein Filter auf die Hilfstabelle wirkt – also eine konstante True-Bedingung, zum Beispiel 1 = 1. Dadurch wird wirklich jede Zeile der Originaldatenquelle mit jeder Zeile der Hilfstabelle kombiniert – was genau den Cross Join ermöglicht.
Vermeidung von Duplikaten und Beibehaltung von Einzigartigkeit
Da die Hilfstabelle eine zusätzliche Spalte mit neuen Werten enthält, verändert sich jede Zeile im kombinierten Ergebnis bezüglich dieser Hilfsspalte. Das bedeutet, dass zwar ähnliche Originalwerte vorhanden sind, die Datensätze aber durch die neue Spalte unterscheidbar bleiben und somit keine vollständigen Duplikate vorliegen.
Diese neue Spalte eignet sich auch dazu, bei der weiteren Analyse etwa unterschiedliche Gruppen zu unterscheiden oder das Ergebnis gezielt zu filtern.
Alternative Methoden
Wenn die Möglichkeit besteht, vor Tableau die Daten auf Datenbankebene oder mit einem ETL-Prozess zu manipulieren, kann man dort ebenfalls eine leichte Variation der Daten erzeugen, etwa indem in der zweiten Hälfte eine System-ID ergänzt wird oder ein Zeitstempel minimal verändert wird.
Innerhalb Tableau könnte man zudem berechnete Felder erstellen, die eigentlich identische Zeilen mit einer Kennzeichnung versehen. Allerdings führt dies nicht wirklich zur Verdopplung der Zeilenanzahl, sondern eher zur Erstellung von zusätzlichen Datenpunkten in der Visualisierung – eine echte Verdopplung in der Datenquelle erreicht man hierdurch nicht.
Zusammenfassung
Zusammenfassend ist der beste Weg, die Anzahl der Zeilen in Tableau zu verdoppeln, ohne identische Duplikate zu erzeugen, das Erzeugen eines Cross Joins mit einer kleinen Hilfstabelle, die als zusätzlicher Split-Faktor wirkt. Dadurch entsteht eine Verdopplung der Zeilenanzahl durch die Kombination mit neuen Werten und es werden keine echten Duplikate erzeugt. Dieser Ansatz erfordert meist eine kleine Hilfstabelle und eine flexible Join-Konfiguration in Tableau.
