Custom Dimensions: Anlegen und Formeln im Detail erklärt

Geändert am Mo, 18 Mai um 7:33 NACHMITTAGS

Was Metriken und Dimensionen unterscheidet, ist hier beschrieben: Dimensionen und Metriken


Wie eine Custom Dimension angelegt wird, ist hier beschrieben: Custom Dimensions: Anlegen und Formeln im Detail erklaert


Dieser Artikel beschreibt die Moeglichkeiten der Formeleingabe bei Custom Dimensions im Detail.


Formel-Editor Uebersicht


In Intelligence Qube (IQ) ist eine praktisch unbegrenzte Verschachtelung von Formeln und Funktionen moeglich, was eine flexible Datenmanipulation und -analyse erlaubt. Es folgt eine kurze Einfuehrung in die Bedienung und die verschiedenen Kategorien von Formeln, die in IQ zur Verfuegung stehen.



Bedienungselemente


Doppelplus (++) — fuegt eine weitere Formel um den aktuellen Block hinzu. Damit lassen sich komplexe Abfragen und Berechnungen schrittweise aufbauen.


Minus (-) — entfernt den aktuellen Block. Enthaelt der Block Unterbloecke, bleiben diese erhalten — das erlaubt feingranulare Anpassungen.


Tipp: Mit dem Lupensymbol neben Dimensionen lassen sich beispielhafte Werte aus der Dimension anzeigen. Das ist beim Bauen von Regex-Mustern und Vergleichen besonders nuetzlich, weil sofort sichtbar wird, in welcher Form die Werte tatsaechlich vorliegen.



Kategorien von Formeln


Values — erlaubt das Setzen von (zumeist Text-)Werten in die neue Dimension. Das kann ein Text, ein Datum, ein Wahrheitswert (Boolean), der Wert einer anderen Dimension oder ein optionales Feld sein. Die Values-Formel wird oft in Kombination mit anderen Funktionen verwendet, um beispielsweise den Text einer Dimension zu transformieren. Eine Besonderheit ist die Vergabe eines leeren Feldes mit NULL — weitere Informationen unter Null in Wikipedia.


Text Transformation — Funktionen zur Veraenderung von bestehenden Textwerten, wie das Verbinden, Ersetzen oder Trimmen von Texten.


Compare — vergleichende Funktionen fuer Texte, Daten und Wahrheitswerte. Nuetzlich, um Daten auf Grundlage spezifischer Kriterien zu filtern oder zu segmentieren.


Condition — Wenn-Dann-Funktionen und Fallunterscheidungen, die bedingte Logik in die Datenanalyse einbringen. Unterschiedliche Ausgaben basierend auf spezifischen Bedingungen werden moeglich.


Advanced — fortgeschrittene Funktionen wie Lookup (vergleichbar mit SVERWEIS in Excel) und die Moeglichkeit, direkte Formeln in Datenbank-Sprache einzugeben. Diese Kategorie richtet sich an erfahrene Nutzer, die spezifische, komplexe Abfragen durchfuehren moechten.



Formeln und Funktionen fuer Custom Dimensions im Detail


Values / Optionales Feld

Gibt den Wert eines Feldes zurueck, wenn dieses Feld in der aktuellen Datenquelle existiert — andernfalls NULL. Grundlage fuer Multi-Source-Formeln, in denen plattformspezifische Felder ueber mehrere Datenquellen hinweg vereinheitlicht werden.


Notiz: Der Baustein Optionales Feld muss immer aussen um den vollstaendigen Ausdruck einer Datenquelle gelegt werden, nicht innen um die einzelne Feldreferenz. Andernfalls erkennt z.B. Text-Extract (RegEx) den Typ nicht korrekt — mit Fehlern wie "Ungueltiger Wert fuer den 1. Parameter".



Text Transformation / Transformation / Trim

Entfernt Leerzeichen am Anfang und Ende des jeweiligen Werts. Beispiel: Bei der Dimension EX-Blockcode werden die Leerzeichen vor dem eigentlichen Wert entfernt.


Trim Beispiel


Verwandte Varianten:

  • LTRIM — entfernt nur fuehrende Leerzeichen.
  • RTRIM — entfernt nur abschliessende Leerzeichen.



Text Transformation / Transformation / Lower-/Upper Case

Wandelt den Wert des Feldes in Gross- oder Kleinbuchstaben um. Vor Vergleichen oder Lookups oft sinnvoll, um Case-Unterschiede auszuschalten.


Upper Case Beispiel



Text Transformation / Concat

Die Concat-Funktion verknuepft Werte und erstellt so neue, zusammengesetzte Informationen. Besonders nuetzlich bei der Erstellung eindeutiger Identifikatoren, der Kombination von Text aus verschiedenen Quellen oder der Erweiterung bestehender Daten um zusaetzliche Informationen.


  1. Wert festlegen — den Wert bestimmen, der mit anderen Werten verknuepft werden soll. Das kann eine Dimension oder ein anderer Wert sein.
  2. Concat hinzufuegen — mithilfe des Doppelplus-Symbols (++) die Concat-Funktion um den zuvor festgelegten Wert legen. Damit laesst sich der Ausgangswert mit weiteren Werten kombinieren.
  3. Option "No value if part is null" nutzen — mit aktiver Option wird das resultierende Feld NULL, sobald ein Teil der Formel NULL ist. Sinnvoll, wenn Text nur dann ergaenzt werden soll, wenn im ersten Feld bereits Text vorhanden ist. Beispiel: Den Namen einer Kampagne mit einem Suffix kombinieren, aber nur, wenn der Kampagnenname existiert — so wird das Suffix in leeren Feldern nicht angezeigt und die Datenqualitaet bleibt erhalten.


Concat Beispiel



Text Transformation / Replace

Weitestgehend selbsterklaerend: ersetzt Text innerhalb eines anderen Textes. Nuetzlich, um z.B. Abkuerzungen in Dimensionswerte auszuschreiben oder Fehler zu korrigieren.


Replace Beispiel



Text Transformation / Text-Extract (RegEx)

Die Text-Extract-Funktion extrahiert spezifische Teile aus einem Textfeld mithilfe von Regular Expressions (Regulaere Ausdruecke). Regular Expressions (RegEx) sind Muster, die zur Identifizierung und Bearbeitung von Texten basierend auf bestimmten Regeln verwendet werden. Sie eignen sich, um Text zu suchen, zu ersetzen oder Teile davon zu extrahieren. IQ nutzt die RE2 Regular Expression Syntax, Details hier.


Beispiel: Extraktion des 3. bis 5. Zeichens

Um aus der Dimension "Data Source Name" das dritte bis fuenfte Zeichen zu extrahieren, wird das folgende Regex-Muster verwendet:


^..(.{3})


Das Muster funktioniert wie folgt:

  • ^ markiert den Anfang des Strings.
  • .. ueberspringt die ersten zwei Zeichen.
  • (.{3}) erfasst die naechsten drei Zeichen.


Tipp: KI-Tools wie ChatGPT eignen sich gut, um Regex-Vorschlaege zu erstellen. Vor der Uebernahme die Muster anhand echter Beispielwerte aus der Vorschau pruefen.


Text-Extract Beispiel


Diese Form der Extraktion ist besonders nuetzlich, wenn die Struktur der Datenquelle bekannt ist und bestimmte Informationen an festgelegten Positionen innerhalb des Textes zu finden sind — etwa bei der Verarbeitung von Codes, Identifikatoren oder formatierten Daten.



Compare / Text-Compare

Die Funktion Text-Compare vergleicht Texte und gibt als Ergebnis einen Wahrheitswert (Boolean) zurueck. Sie ist vielseitig einsetzbar und unterstuetzt Vergleiche darauf, ob Texte gleich oder ungleich sind, mit einem bestimmten Muster beginnen, auf ein Muster enden oder einen bestimmten Wert enthalten.


Einstellungen fuer Case Sensitivity

Der Vergleich kann case-sensitiv (Gross- und Kleinschreibung beachtend) oder case-insensitiv durchgefuehrt werden. Das erhoeht die Flexibilitaet beim Umgang mit Textdaten.


Beispiel: Suche nach einem spezifischen Muster

Angenommen, es soll geprueft werden, ob der Data Source Name mit dem Wort "spot" beginnt. Eine solche Pruefung eignet sich z.B., um Filter fuer Data Shares zu erstellen oder den zurueckgegebenen Wahrheitswert in Bedingungsformeln (Condition-Formeln) weiterzuverarbeiten.


Text-Compare Beispiel


Diese Formel prueft, ob Data Source Name mit "spot" beginnt, und gibt einen Wahrheitswert (TRUE oder FALSE) zurueck.


Anwendungsbeispiele

  • Filter fuer Data Shares: der Wahrheitswert entscheidet, ob bestimmte Daten in einem Data Share enthalten sein sollen.
  • Weiterverarbeitung in Bedingungsformeln: das Ergebnis von Text-Compare laesst sich als Teil einer komplexeren Bedingungslogik verwenden, um dynamische Ergebnisse basierend auf Textvergleichen zu erzielen.



Compare / Advanced Text-Compare

Fuer eine fortgeschrittene Textvergleichsfunktion, die Regular Expressions (RegEx) nach der RE2-Syntax nutzt, um Textinhalte zu finden und Wahrheitswerte zurueckzugeben, eignet sich Advanced Text Compare.


Das folgende Beispiel zeigt, wie nach dem Wortteil "spot" gesucht wird — unabhaengig von Gross- oder Kleinschreibung — und nur TRUE zurueckgegeben wird, wenn das Wort nach "spot" weitergeht und kein Leerzeichen folgt. Soll "Spot", "SPOT", "spot" usw. erfasst werden, muss die Suche case-insensitiv sein.


Das RegEx-Muster, das diese Kriterien erfuellt:


(?i)spot\B.


  • (?i) aktiviert den case-insensitiven Modus.
  • spot ist der Textteil, nach dem gesucht wird.
  • \B stellt sicher, dass nach "spot" kein Wortgrenzzeichen (wie ein Leerzeichen) folgt, sondern das Wort direkt weitergeht.


Advanced Text-Compare Beispiel



Compare / Number, Date, Boolean Compare

Diese Vergleichsfunktionen verhalten sich identisch zu Text Compare, allerdings fuer die spezifischen Datentypen Zahl, Datum und Wahrheitswert. Operatoren je nach Typ: =, !=, <, <=, >, >=.



Compare / Is (not) Null

Ueberprueft, ob der Wert existiert. Achtung: Prueft nicht, ob das Feld leer ist. Auch ein leeres Feld kann nicht NULL sein — siehe Null in Wikipedia.


Beispiel: Wenn das Feld "SE-Block Code" keinen Wert hat, ist der Wert wahr:


Is Null Beispiel



Condition / Data Source Type Switch

Individuelle Formeln oder Werte je Datenquellentyp mit Fallback-Option.


In IQ koennen individuelle Formeln oder Werte basierend auf dem Typ der Datenquelle als Dimension ausgegeben werden. Diese Flexibilitaet erlaubt es, spezifische Anforderungen und Logiken fuer unterschiedliche Arten von Datenquellen zu definieren.


Fallback-Wert

Wird fuer alle Datenquellentypen verwendet, falls kein spezifischer Wert oder keine spezifische Formel fuer die jeweilige Datenquelle definiert wurde. Dient als Standardantwort, wenn keine spezifischere Anweisung vorhanden ist.


Deaktivierung des Fallback fuer spezifische Datenquellen

Pro Datenquellentyp wird einzeln entschieden, ob der Fallback gilt. Durch Deaktivieren des Kaestchens "Use Fallback" fuer einen Typ laesst sich eine eigene Formel hinterlegen, die ausschliesslich fuer diesen Typ angewendet wird.


Beispiel: Anwendung auf Spreadsheet-Datenquellen

Fuer eine Spreadsheet-Datenquelle soll ein spezifischer Text ausgegeben werden, fuer alle anderen Datenquellentypen ein Standard-Text:


Data Source Type Switch Beispiel



Condition / Data Source Switch

Funktioniert analog zum Data Source Type Switch, jedoch fuer jede individuelle Datenquelle einzeln. Sinnvoll, wenn auf Instanz-Ebene unterschieden werden muss — etwa weil zwei Spreadsheet-Importe unterschiedliche Formeln benoetigen, obwohl sie denselben Typ haben.


Zusaetzlich gibt es Condition / Data Source Template Switch als mittlere Granularitaet: pro Template (Vorlage). Mehrere Instanzen desselben Templates werden gleich behandelt, Instanzen verschiedener Templates erhalten unterschiedliche Formeln.



Condition / Not

Wird auf Boolean-Felder oder -Ergebnisse angewendet und kehrt den Boolean-Wert um.


Not Beispiel



Condition / Fallback

Gibt einen Wert zurueck, falls ein Feld NULL ist. Achtung: Prueft nicht, ob das Feld leer ist. Auch ein leeres Feld kann nicht NULL sein — siehe Null in Wikipedia.


Bei mehreren moeglichen Ersatzwerten lassen sich diese als geordnete Liste angeben — der erste nicht-NULL-Wert wird zurueckgegeben. Beispiel: Kampagnenname, ansonsten Adset-Name, ansonsten ein Standardtext.


Fallback Beispiel



Condition / IF-THEN

Klassische Wenn-Dann-Formel. Das Feld IF erwartet einen Boolean-Wert — das kann eine Boolean-Dimension sein oder eine Funktion, die auf Wahr/Falsch prueft.


Im folgenden Beispiel prueft das System: Wenn das Feld der Dimension EX-Blockcode leer ist, wird der Text zurueckgegeben. Andernfalls die Dimension selbst.


IF-THEN Beispiel


Info: Das IF-THEN-Element unterstuetzt auch mehrere Wenn-Dann-Paare plus einen Ansonsten-Zweig. Damit lassen sich Mehrfach-Verzweigungen elegant abbilden — z.B. eine Channel-Klassifikation, in der je nach Datenquellentyp "SEA", "Social" oder "Other" zurueckgegeben wird.



Condition / And-Or

Verknuepft zwei oder mehr Boolean-Werte mit logischem UND/ODER — meist zusammen mit komplexeren Formeln. Im folgenden Beispiel wird ueberprueft, ob ein Feld NULL ist oder keinen Text enthaelt.


And-Or Beispiel



Advanced / Raw

Ermoeglicht die direkte Eingabe von Datenbank-Formeln. Die Eingabe wird live validiert. Empfehlenswert fuer komplexe verschachtelte Ausdruecke, die ueber Bausteine zu unuebersichtlich waeren. Bestehende Bausteine lassen sich per Knopfdruck in Raw umwandeln.


Notiz: Zur Nutzung von Raw kann bei Bedarf das Support-Team kontaktiert werden. Eine fehlerhafte Raw-Formel wird vom Editor abgelehnt, sodass keine ungueltigen Werte gespeichert werden.



Advanced / Method

Freier Aufruf einer beliebigen Formel-Funktion ueber Autocomplete. Sinnvoll fuer Funktionen, die keinen eigenen Baustein haben, z.B.:

  • Typ-Casts: CAST_INT, CAST_STRING, CAST_FLOAT, CAST_DATE
  • Datums-Extraktion: YEAR, MONTH, DAY, QUARTER, ISO_WEEK
  • Timestamp-Funktionen: TIMESTAMP_UNIX_SECONDS, TIMESTAMP_DIFF_DAYS



Advanced / Lookup

Die Lookup-Funktion bietet eine leistungsstarke Moeglichkeit, Daten basierend auf Uebereinstimmungen zwischen verschiedenen Datensaetzen zu suchen und zu ersetzen. Sie eignet sich besonders dazu, korrespondierende Werte aus einer Referenztabelle zu extrahieren — aehnlich SVERWEIS in Excel.


Case Sensitivity

  • Case-sensitiv — unterscheidet zwischen Gross- und Kleinschreibung.
  • Case-insensitiv — ignoriert Unterschiede zwischen Gross- und Kleinschreibung.
  • Option "But Newest Value" — nuetzlich, wenn mehrere passende Werte vorhanden sind. Mit dieser Einstellung wird der neueste (zuletzt hinzugefuegte) Wert aus der Referenztabelle verwendet.


Konfiguration der Lookup-Funktion

  1. Lookup Type definieren — siehe oben.
  2. Datenquelle auswaehlen — die Datenquelle, die die Referenztabelle enthaelt. Diese Tabelle sollte mindestens zwei Spalten umfassen: eine fuer den Ist-Wert (der gesuchte Wert) und eine fuer den Soll-Wert (der ersetzende oder zurueckgegebene Wert).
  3. Spalten mit Ist- und Soll-Wert definieren — "Search in Dimension" enthaelt die Ist-Werte, die ersetzt werden sollen, und "Output Dimension" die entsprechenden Soll-Werte, die als Ersatz dienen.
  4. Lookup-Dimension aussuchen — die Dimension innerhalb von IQ, in der die Werte stehen, die ersetzt werden sollen. Diese wird mit den Ist-Werten in der ausgewaehlten Datenquelle verglichen.


Praktisches Beispiel

Angenommen, eine Datenquelle enthaelt Sender. Diese teils unterschiedlich geschriebenen Sender sollen durch lesbare Sendernamen ersetzt werden:


Lookup Beispiel


Notiz: Lookups sind maechtig, aber nicht immer noetig. Wenn eine Zuordnung statisch ist und nur wenige Werte umfasst, ist eine IF-THEN-Verzweigung mit mehreren Zweigen meist einfacher, schneller und besser nachvollziehbar.


War dieser Artikel hilfreich?

Das ist großartig!

Vielen Dank für das Feedback

Leider konnten wir nicht helfen

Vielen Dank für das Feedback

Wie können wir diesen Artikel verbessern?

Wählen Sie wenigstens einen der Gründe aus
CAPTCHA-Verifikation ist erforderlich.

Feedback gesendet

Wir wissen Ihre Bemühungen zu schätzen und werden versuchen, den Artikel zu korrigieren