Benutzerdefinierte LuckyTemplates-Sortierung mit DAX

Benutzerdefinierte LuckyTemplates-Sortierung mit DAX

Viele Leute glauben, dass wir mit DAX keine benutzerdefinierte LuckyTemplates- Sortierung durchführen können , aber das stimmt nicht. DAX kann die Sortierung absolut garantieren, und das ist eigentlich ziemlich einfach. Im heutigen Blog zeige ich Ihnen, wie Ihnen genau das ganz einfach gelingt. Das vollständige Video dieses Tutorials können Sie unten in diesem Blog ansehen.

Inhaltsverzeichnis

Unser Datenmodell

Beginnen wir mit einem einfachen Datenmodell. Unsere Datentabelle enthält drei Kampagnen, den analysierten ROI und die Kosten. 

Benutzerdefinierte LuckyTemplates-Sortierung mit DAX

Wie Sie in der Tabelle sehen können, haben sie die gleichen Kosten, aber ihre ROIs sind unterschiedlich. Das Konzept hier besteht darin, zu wissen, welche Kampagnen wir abhängig von ihrem ROI für ein bestimmtes Budget durchführen sollten. 

Benutzerdefinierte LuckyTemplates-Sortierung: Verwenden der While-Schleife

Beginnen wir mit einer Messung mit einer einfachen While-Schleife. 

Benutzerdefinierte LuckyTemplates-Sortierung mit DAX

_Budget in der Budgetvariablen .

Benutzerdefinierte LuckyTemplates-Sortierung mit DAX

Und dann verwenden wir die while-Schleife, indem wir eine Tabellenvariable VAR_Table erstellen . 

Benutzerdefinierte LuckyTemplates-Sortierung mit DAX

Anschließend verwenden wir , die unserer Basistabelle 4 entsprechen , und fügen mithilfe von „_RT“ eine laufende Summenspalte hinzu .

Benutzerdefinierte LuckyTemplates-Sortierung mit DAX

Als Nächstes erfassen wir den [Analysierten ROI] in unserer aktuellen Zeile, der als VAR_ROI gespeichert ist . Dann nehmen wir unser Budget . Davon subtrahieren wir , filtern Tabelle 4 nach dem analysierten ROI, der größer oder gleich dem ROI ist, den wir für unsere aktuelle Zeile ermitteln, und ermitteln die [Kosten]

Benutzerdefinierte LuckyTemplates-Sortierung mit DAX

Diese Zeilen erhalten den höchsten ROI in der ersten Zeile, dann den nächsthöheren für die nächste Zeile und so weiter. Im Wesentlichen haben wir also eine Spalte, die eine laufende Summe darstellt, die bei Negativen bis Null herunterzählt.

Dann verlassen wir unsere while-Schleife. Wir erstellen unsere FinalTable-Variable mit VAR_FinalTable , wobei wir unsere Tabellenvariable einfach nach der laufenden Summe filtern , die größer oder gleich Null ist. Wir wenden diesen Filter an, da alles unter Null bedeutet, dass wir einen negativen Wert erreicht haben und unser Budget überschritten hat.

Benutzerdefinierte LuckyTemplates-Sortierung mit DAX

Dann können wir für diese Werte verwenden. hinzufügen .

Benutzerdefinierte LuckyTemplates-Sortierung mit DAX

Wir können dieses Kartenvisual im Auswahlbereich einblenden und sehen, dass wir über Instagram und SEM verfügen, die unsere beiden höchsten ROIs sind.

Benutzerdefinierte LuckyTemplates-Sortierung mit DAX

Schauen wir uns unsere Originaltabelle an, um die Ergebnisse zu vergleichen.

Benutzerdefinierte LuckyTemplates-Sortierung mit DAX

Wir können sehen, dass PPC tatsächlich einen geringeren ROI hat als SEM und Instagram. 

Wie Sie vielleicht bemerkt haben, kam unser Ergebnis jedoch nicht in der richtigen Reihenfolge zurück, da der Instagram-Wert 8,1 zuerst vor dem SEM-Wert 8,15 angezeigt wurde. 

Anwenden der LuckyTemplates-Sortierreihenfolge

Was aber, wenn wir möchten, dass Instagram zuerst zurückgegeben wird, weil es den höchsten ROI hat, und SEM an zweiter Stelle zurückgegeben wird? Grundsätzlich wollen wir die Sortierreihenfolge gewährleisten. Das wird etwas knifflig, aber es ist nicht schwer zu verstehen, wie es geht.

So sollte unsere Funktion aussehen, wobei der untere Abschnitt derselbe ist wie die while-Schleife, die wir zuvor hatten.

Benutzerdefinierte LuckyTemplates-Sortierung mit DAX

Und um die Sortierreihenfolge zu gewährleisten, müssen wir ein wenig zusätzliche Arbeit leisten. 

Auch hier beginnen wir mit unserem VAR_Budget , das wir auf 20000 setzen. Dann erstellen wir unsere Count-Variable mit VAR_Count I und wenden auf Tabelle 4 an. 

Benutzerdefinierte LuckyTemplates-Sortierung mit DAX

In der nächsten Zeile verwenden wir die CONCATENATEX- Funktion, um unsere Spalten „Kampagnen“, „Analysierter ROI“ und „Kosten“ zu verketten. Sie können alles als Trennzeichen verwenden, solange es nicht in Ihren Daten enthalten ist. In diesem Fall verwenden wir also einfach Sternchen. 

Dann verwenden wir im nächsten Parameter nach der Kostenspalte ein Pipe-Zeichen (|). Wir verwenden VAR_Ordered auch , um nach dem analysierten ROI in absteigender Reihenfolge zu sortieren, was bedeutet, dass der höchste ROI oben steht.

Benutzerdefinierte LuckyTemplates-Sortierung mit DAX

Wenn wir uns die Kommentarzeile ansehen, heißt es, dass der Code uns das Ergebnis im Format SEM*8.158*10000 | liefert Instagram*8,1*10000 . Es wird auch in der Reihenfolge vom höchsten ROI zum niedrigsten ROI ausgegeben. 

Benutzerdefinierte LuckyTemplates-Sortierung: Verwenden der For-Schleife

Dieses Beispiel ist interessant, weil wir eine for-Schleife , eine while-Schleife und alle möglichen coolen Funktionen erhalten. Dieses Mal verwenden wir die for-Schleife

Tabelle 1

In diesem Beispiel ist Tabelle1 unsere for-Schleife, und was wir tun, ist ADDCOLUMNS zu , das von eins zu unserer Zählung um eins geht, geschrieben als (1,_Count,1).

In unserer Zeile verwenden wir dann , da wir das Pipe-Zeichen verwenden, um die Zeilen unserer Tabelle zu trennen. Mithilfe von PATHITEM ermitteln wir dann den Pfad aus der Ordered- Variablen, die unser String ist. 

Wir verwenden auch Value , unsere automatische Spalte, die mit GENERATESERIES erstellt wird, oder unsere Kalender 1, 2, 3, 4, 5, bis wir die Anzahl der Zeilen in unserer Tabelle erschöpft haben. Dann geben wir es als Text zurück . 

Benutzerdefinierte LuckyTemplates-Sortierung mit DAX

Was wir jetzt haben, ist eine garantierte Sortierreihenfolge für unsere Tabelle, die vom höchsten ROI zum niedrigsten reicht. Hier ist also Ihr DAX zur Gewährleistung der Sortierreihenfolge. 

Tabelle 2

Um dies nun in ein brauchbares Format zu bringen, müssen wir Tabelle 2 erstellen , in der wir die einzelnen Spalten aus unserer Zeichenfolge auswählen, die wir haben.

Lassen Sie uns eine weitere ADDCOLUMNS verwenden , um Tabelle 1, unsere for-Schleife, hinzuzufügen. Erstellen Sie für Kampagnen eine Kampagnenspalte und verwenden Sie , um Sternchen durch Pipes zu ersetzen. Dann verwenden wir PATHITEM für RowPath, um das erste Element zu erfassen und es als TEXT zurückzugeben.

Benutzerdefinierte LuckyTemplates-Sortierung mit DAX

In der Spalte „Analysierter ROI“ machen wir im Grunde dasselbe. ERSETZEN Sie Sternchen durch Pipes. Nehmen Sie dann das zweite Element in unserem Pfad und geben Sie es als TEXT zurück. Wir tun dies, weil wir mit PATHITEM aus irgendeinem Grund eine Ganzzahl oder einen Text, aber keine Dezimalzahlen zurückgeben können.

Das ist etwas seltsam, aber wir können das lösen, denn wir müssen nur eine Null hinzufügen und DAX konvertiert die TEXT-Zeichenfolge automatisch in einen numerischen Wert. 

Benutzerdefinierte LuckyTemplates-Sortierung mit DAX

Auch hier machen wir dasselbe für die Spalte „Kosten“ . Wir verwenden SUBSTITUTE und PATHITEM, um das dritte Element zu erfassen. Um dann eine Zahl zurückzugeben, fügen wir erneut Null hinzu, da es sich in diesem Fall um eine ganze Zahl handelt.

Benutzerdefinierte LuckyTemplates-Sortierung mit DAX

Der Rest unseres Codes ist die while-Schleife, die wir zuvor besprochen haben. Was wir jetzt erhalten, ist unsere garantierte Sortierreihenfolge von der höchsten zur niedrigsten Kampagne. 

Benutzerdefinierte LuckyTemplates-Sortierung mit DAX

Unser SEM war der am höchsten bewertete ROI für unsere Kampagne und Instagram ist der zweitbeste. 


Externe Tools in LuckyTemplates – LuckyTemplates Power Sort Pro
So sortieren und filtern Sie Diagramme im Report Builder.
Sortieren Sie Visualisierungen dynamisch in Ihren LuckyTemplates-Berichten

Abschluss

Mithilfe der while- und for-Schleifen haben wir die benutzerdefinierte LuckyTemplates-Sortierung in unserem Datenmodell basierend auf ihren ROIs erfolgreich eingesetzt – ein Beweis dafür, dass DAX die Sortierreihenfolge definitiv garantieren kann. 

Es ist wichtig sicherzustellen, dass Ihre Daten in DAX richtig sortiert sind, um sie genau analysieren und visualisieren zu können. Sie können das, was Sie in diesem Tutorial gelernt haben, anwenden, um Ihre Daten für Ihren nächsten Bericht entsprechend zu sortieren.

Alles Gute,

Greg Deckler


So speichern und laden Sie eine RDS-Datei in R

So speichern und laden Sie eine RDS-Datei in R

Sie erfahren, wie Sie Objekte aus einer .rds-Datei in R speichern und laden. In diesem Blog wird auch behandelt, wie Sie Objekte aus R in LuckyTemplates importieren.

Was ist Self in Python: Beispiele aus der Praxis

Was ist Self in Python: Beispiele aus der Praxis

Was ist Self in Python: Beispiele aus der Praxis

First N Business Days Revisited – Eine DAX-Codierungssprachenlösung

First N Business Days Revisited – Eine DAX-Codierungssprachenlösung

In diesem Tutorial zur DAX-Codierungssprache erfahren Sie, wie Sie die GENERATE-Funktion verwenden und einen Kennzahltitel dynamisch ändern.

Präsentieren Sie Einblicke mithilfe der Multi-Threaded-Dynamic-Visuals-Technik in LuckyTemplates

Präsentieren Sie Einblicke mithilfe der Multi-Threaded-Dynamic-Visuals-Technik in LuckyTemplates

In diesem Tutorial erfahren Sie, wie Sie mithilfe der Multi-Threaded-Dynamic-Visuals-Technik Erkenntnisse aus dynamischen Datenvisualisierungen in Ihren Berichten gewinnen.

Einführung in den Filterkontext in LuckyTemplates

Einführung in den Filterkontext in LuckyTemplates

In diesem Artikel werde ich den Filterkontext durchgehen. Der Filterkontext ist eines der Hauptthemen, über die sich jeder LuckyTemplates-Benutzer zunächst informieren sollte.

Beste Tipps zur Verwendung der Apps im LuckyTemplates-Onlinedienst

Beste Tipps zur Verwendung der Apps im LuckyTemplates-Onlinedienst

Ich möchte zeigen, wie der LuckyTemplates Apps-Onlinedienst bei der Verwaltung verschiedener Berichte und Erkenntnisse aus verschiedenen Quellen helfen kann.

Analysieren Sie Gewinnmargenänderungen im Laufe der Zeit – Analysen mit LuckyTemplates und DAX

Analysieren Sie Gewinnmargenänderungen im Laufe der Zeit – Analysen mit LuckyTemplates und DAX

Erfahren Sie, wie Sie Ihre Gewinnmargenänderungen mithilfe von Techniken wie Kennzahlenverzweigung und der Kombination von DAX-Formeln in LuckyTemplates ermitteln.

Materialisierungsideen für Datencaches in DAX Studio

Materialisierungsideen für Datencaches in DAX Studio

In diesem Tutorial werden die Ideen der Materialisierung von Datencaches und deren Auswirkungen auf die Leistung von DAXs bei der Bereitstellung von Ergebnissen erläutert.

Geschäftsberichte mit LuckyTemplates

Geschäftsberichte mit LuckyTemplates

Wenn Sie bisher noch Excel verwenden, ist dies der beste Zeitpunkt, LuckyTemplates für Ihre Geschäftsberichtsanforderungen zu verwenden.

Was ist LuckyTemplates Gateway? Alles was du wissen musst

Was ist LuckyTemplates Gateway? Alles was du wissen musst

Was ist LuckyTemplates Gateway? Alles was du wissen musst