Oft steht man vor dem Problem: Wie lese ich mehrere Dateien mit dem gleichen Format ein, so dass dies auch noch funktioniert wenn neue Files hinzukommen. In diesem Tuesday Tipp erfährst du wie Wildcard-Zeichen das Einlesen von mehreren Dateien im gleichen Format ermöglichen!
In vielen Fällen generieren Systeme die gleichen Dateien auf Tages, Wochen, Monats oder Jahres-Ebene. Das Verarbeiten dieser in geringen Mengen kann dabei einfach mit zusätzlichen Eingabedaten (Input)-Tools und Zusammenführen (Union)-Tool erledigt werden - doch was wenn wir pro Monat ein File haben und das für die letzten 10 Jahre? Wie können wir alle auf einmal einlesen und den Workflow so bauen, dass auch alle weiteren Files automatisch mit eingelesen werden?
Die Antwort: Inputs mit Wildcards!
Was sind Wildcard-Zeichen?
Wildcard-Zeichen sind gewissermaßen "Platzhalter", bzw. dynamische Zeichen. Es gibt davon genau zwei in Alteryx. Das Fragezeichen (?) und das Sternchen (*). Während das Fragezeichen nur ein einfacher Platzhalter für ein einzelnes Zeichen ist, ist das Sternchen quasi eine beliebige Menge an Platzhaltern. Das ganze lässt sich am besten an ein paar Beispielen erklären.
Wie funktionieren Wildcards?
Nehmen wir an, wir haben folgenden Ordner:
Wichtig ist dabei: Alle Files sind genau gleich aufgebaut (gleiche Anzahl an Spalten und gleicher Datentyp in den Spalten).
Natürlich wäre es möglich 13 Input Tools alle Daten einzulesen, aber dies wäre nicht dynamisch. Als erstes wollen wir NUR die Monate 01 bis 09 einlesen um die Quartale 1-3 zu analysieren.
Die Dateinamen haben dabei immer ein relatives simples Schema 2009-01 bis 2009-09. Um nun alle 9 Dateien auf einmal einzulesen ersetzen wir die letzte Zahl durch ein Fragezeichen.
Wichtig: Das Fragezeichen ist ein BELIEBIGES Zeichen. Würden im gleichen Ordner auch Files wie "2009-0a" liegen, würden diese ebenfalls eingelesen werden.
Wollen wir alle Daten eines Jahres, so können wir diese sowohl mit einem doppeltem Fragezeichen ?? als auch mit einem Sternchen (*) erreichen. Beim Sternchen würden wir jedoch nur 2009-*.csv suchen, da dieses beliebig viele Charakter ersetzen kann.
Das Sternchen kann dabei sehr flexibel eingesetzt werden und muss auch nicht immer am Ende stehen - gleiches gilt auch für das Fragezeichen. Wollen wir beispielweise den Januar über mehrere Jahre hinweg vergleichen, so können wir dies wie folgt machen.
*-01.csv oder ????-01.csv
Selbstverständlich lassen sich die beiden Wildcards auch kombinieren, so dass auch deutlich komplexere Namens-Schemata abgedeckt werden können.
Weitere Tipps Tuesday Beiträge
Dieser Eintrag ist Teil der Tipps Tuesday-Serie, alle Einträge dieser Serie findest du in unserem Index aufgelistet.
Sie müssen ein registrierter Benutzer sein, um hier einen Kommentar hinzuzufügen. Wenn Sie sich bereits registriert haben, melden Sie sich bitte an. Wenn Sie sich noch nicht registriert haben, führen Sie bitte eine Registrierung durch und melden Sie sich an.