Übersicht
Dieses fortgeschrittene Szenario beschreibt, wie Sie eine Kombination aus den Funktionen pick und match effektiv nutzen können, um Textübereinstimmungen inline zuzuordnen. In der Programmierung dient dies einem ähnlichen Zweck wie ein Case-Befehl. Das Szenario zeigt diese Funktionalität, indem es Ländernamen den Namen von Regionen zuordnet und gleichzeitig einen Standardwert für Region für alle bisher nicht zugeordneten Country-Namen bereitstellt.
Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in einen neuen Abschnitt ein.
Das Ladeskript umfasst:
Ladeskript
Countries:
LOAD * INLINE [
Country
"USA"
"Canada"
"Germany"
"Japan"
"Australia"
"South Africa"
];
Ergebnisse
Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie eine neue Tabelle und fügen Sie die folgenden Felder als Dimensionen hinzu:
Erstellen Sie die folgende Kennzahl:
-
=Pick(1+match(Country,'USA','Canada','Germany','Japan','Australia'), 'Unmapped', 'North America', 'North America', 'Europe', 'Asia', 'Australia')
Die Funktion match gibt die Indexübereinstimmung der durch Komma getrennten Alternativen zurück, beginnend mit 1 = ‘USA’, 2 = ‘Canada’ und so weiter. Wird keine Übereinstimmung gefunden, ist das Ergebnis null. Dieses Ergebnis wird dann um 1 erhöht und in die Funktion pick eingelesen, mit dem Ergebnis 1 = default value, wenn keine Übereinstimmung gefunden wird, 2 = ‘USA’, 3 = ‘Canada’ und so weiter.
Diese Kombination aus Match- und Pick-Funktionsaufrufen decodiert dann die passenden Country-Namen in einen entsprechenden Region-Namen. Alle nicht zugeordneten Country-Werte geben den Standardwert für Region zurück, Unmapped.
Ergebnistabelle
| Country | Pick(1+match(Country,'USA','Canada','Germany','Japan','Australia'), 'Unmapped', 'North America', 'North America', 'Europe', 'Asia', 'Australia') |
|---|
| Australia | Australia |
| Canada | North America |
| Germany | Europe |
| Japan | Asia |
| South Africa | Unmapped |
| USA | North America |