LuckyTemplates aangepaste sortering met behulp van DAX

LuckyTemplates aangepaste sortering met behulp van DAX

Veel mensen denken dat we geen aangepaste LuckyTemplates- sortering kunnen uitvoeren met DAX , maar dat is niet waar. DAX kan absoluut sorteren garanderen, en het is eigenlijk vrij eenvoudig om te doen. In de blog van vandaag laat ik je zien hoe je dat eenvoudig kunt doen. Je kunt de volledige video van deze tutorial onderaan deze blog bekijken.

Inhoudsopgave

Ons datamodel

Laten we beginnen met een eenvoudig datamodel. Onze gegevenstabel heeft drie campagnes, geanalyseerde ROI en kosten. 

LuckyTemplates aangepaste sortering met behulp van DAX

Zoals u in de tabel kunt zien, hebben ze dezelfde kosten, maar verschillen hun ROI's. Het concept hier is om te weten welke campagnes we moeten uitvoeren, afhankelijk van hun ROI voor een bepaald budget. 

Aangepaste sortering in LuckyTemplates: de While-lus gebruiken

Laten we beginnen met een maat met een eenvoudige while-lus. 

LuckyTemplates aangepaste sortering met behulp van DAX

We stellen ons budget in op 20000 en slaan het op in de variabele Budget met _Budget.

LuckyTemplates aangepaste sortering met behulp van DAX

En dan gebruiken we de while-lus door een tabelvariabele VAR_Table te maken . 

LuckyTemplates aangepaste sortering met behulp van DAX

We gebruiken dan die indruisen tegen onze basistabel 4 en voegen een kolom met lopend totaal toe met behulp van "_RT" .

LuckyTemplates aangepaste sortering met behulp van DAX

Vervolgens pakken we de [Geanalyseerde ROI] in onze huidige rij opgeslagen als VAR_ROI . Vervolgens nemen we ons budget . Hiervan trekken we af , filteren Tabel 4 voor de geanalyseerde ROI die groter is dan of gelijk is aan de ROI die we pakken voor onze huidige rij, en pakken de [Cost]

LuckyTemplates aangepaste sortering met behulp van DAX

Deze regels nemen de hoogste ROI in de eerste rij, vervolgens de volgende hoogste voor de volgende rij, enzovoort. Dus in wezen hebben we een kolom met een lopend totaal dat aftelt tot nul in negatieven.

Dan verlaten we onze while-lus. We maken onze FinalTable-variabele met VAR_FinalTable , waar we eenvoudigweg onze tabelvariabele filteren op het lopende totaal dat groter is dan of gelijk is aan nul. We passen dit filter toe omdat alles onder nul betekent dat we negatief zijn geworden en dat we geen budget meer hebben.

LuckyTemplates aangepaste sortering met behulp van DAX

Dan kunnen we gebruiken voor die waarden. We voegen onze kolommen - Campagnes, Geanalyseerde ROI en Kosten - toe en voegen toe .

LuckyTemplates aangepaste sortering met behulp van DAX

We kunnen deze kaartafbeelding zichtbaar maken in het selectievenster en zien dat we onze Instagram en SEM hebben, wat onze twee hoogste ROI's zijn.

LuckyTemplates aangepaste sortering met behulp van DAX

Laten we onze originele tabel bekijken om de resultaten te vergelijken.

LuckyTemplates aangepaste sortering met behulp van DAX

We kunnen zien dat de PPC inderdaad een lagere ROI heeft dan SEM en Instagram. 

Zoals je misschien hebt gemerkt, kwam ons resultaat niet in de juiste volgorde terug, met Instagram's 8.1 als eerste te zien vóór SEM's 8.15. 

LuckyTemplates-sorteervolgorde toepassen

Maar wat als we willen dat Instagram als eerste wordt geretourneerd omdat het de hoogste ROI heeft en SEM als tweede wordt geretourneerd? Kortom, we willen de sorteervolgorde garanderen. Dit wordt een beetje lastig, maar het is niet moeilijk om te begrijpen hoe het moet.

Zo zou onze functie eruit moeten zien, waarbij het onderste gedeelte hetzelfde is als de while-lus die we eerder hadden.

LuckyTemplates aangepaste sortering met behulp van DAX

En om de sorteervolgorde te garanderen, moeten we wat extra werk verzetten. 

Nogmaals, we beginnen met onze VAR_Budget die we hebben ingesteld op 20000. Vervolgens maken we onze Count-variabele met behulp van VAR_Count I en passen we toe op Tabel 4. 

LuckyTemplates aangepaste sortering met behulp van DAX

In de volgende regel zullen we de CONCATENATEX- functie gebruiken om onze kolommen Campagnes, Geanalyseerde ROI en Kosten samen te voegen. U kunt alles als scheidingsteken gebruiken, zolang het maar niet in uw gegevens staat, dus laten we in dit geval sterretjes gebruiken. 

Vervolgens gebruiken we een sluisteken (|) in de volgende parameter na de kostenkolom. We gebruiken ook VAR_Ordered om te sorteren op de geanalyseerde ROI in aflopende volgorde, wat betekent dat de hoogste ROI bovenaan staat.

LuckyTemplates aangepaste sortering met behulp van DAX

Als we naar de commentaarregel kijken, staat er dat de code ons het resultaat zal geven in het formaat SEM*8.158*10000 | Instagram*8.1*10000 . Het komt ook uit in de volgorde van de hoogste ROI tot de laagste ROI. 

Aangepaste sortering in LuckyTemplates: For-lus gebruiken

Dit voorbeeld is interessant omdat we een for-lus , while-lus en allerlei coole functies krijgen. Deze keer gebruiken we de lus for

Tafel 1

Voor dit voorbeeld is Tabel1 onze for-lus, en wat we doen is KOLOMMEN TOEVOEGEN aan die van één naar onze telling door één gaat, geschreven als (1,_Count,1).

In onze rij gebruiken we dan omdat we het pipe-teken gebruiken om de rijen van onze tabel te scheiden. Met behulp van PATHITEM halen we vervolgens het pad uit de geordende variabele, wat onze string is. 

We gebruiken ook Value , onze automatische kolom die is gemaakt met GENERATESERIES , of onze kalenders 1, 2, 3, 4, 5, totdat we het aantal rijen in onze tabel hebben uitgeput. Vervolgens retourneren we het terug als Tekst

LuckyTemplates aangepaste sortering met behulp van DAX

Wat we nu hebben is een gegarandeerde sorteervolgorde voor onze tafel, die van de hoogste ROI naar de laagste gaat. Dus hier is je DAX om de sorteervolgorde te garanderen. 

Tafel 2

Om dit nu in een bruikbaar formaat te krijgen, moeten we Tabel2 doen , waar we de individuele kolommen uit onze string die we hebben, zullen kiezen.

Laten we nog een ADDCOLUMNS gebruiken om toe te voegen aan Tabel1, onze for-lus. Maak voor Campagnes een kolom Campagnes en gebruik om sterretjes te vervangen door pijpen. Vervolgens gebruiken we PATHITEM op RowPath om het eerste element te pakken en terug te sturen als TEXT.

LuckyTemplates aangepaste sortering met behulp van DAX

In de kolom Geanalyseerde ROI doen we in principe hetzelfde. VERVANG sterretjes door pijpen. Pak dan het tweede item op ons pad en retourneer het als TEKST. We doen dit omdat PATHITEM ons om de een of andere reden laat terugkeren als geheel getal of tekst, maar niet als decimale getallen.

Dat is een beetje raar, maar we kunnen dat oplossen, want we hoeven alleen maar nul toe te voegen en DAX converteert de TEXT-tekenreeks automatisch naar een numerieke waarde. 

LuckyTemplates aangepaste sortering met behulp van DAX

Nogmaals, we doen hetzelfde voor de kolom Kosten . We gebruiken SUBSTITUTE en PATHITEM om het derde item te pakken. Om vervolgens een getal terug te geven, voegen we opnieuw nul toe, omdat het in dit geval een geheel getal is.

LuckyTemplates aangepaste sortering met behulp van DAX

De rest van onze code is de while-lus die we eerder hebben besproken. Wat we nu krijgen is onze gegarandeerde sorteervolgorde van hoogste naar laagste campagne. 

LuckyTemplates aangepaste sortering met behulp van DAX

Onze SEM was onze hoogst genoteerde ROI voor onze campagne en Instagram is de tweede. 


Externe tools in LuckyTemplates - LuckyTemplates Power Sort Pro
Hoe u een grafiek kunt sorteren en filteren in Report Builder
Sorteer visualisaties dynamisch in uw LuckyTemplates-rapporten

Conclusie

Met behulp van de while- en for-loops hebben we met succes aangepaste LuckyTemplates-sortering gebruikt in ons datamodel op basis van hun ROI's - een bewijs dat DAX de sorteervolgorde absoluut kan garanderen. 

Het is belangrijk om ervoor te zorgen dat uw gegevens correct zijn gesorteerd in DAX om deze nauwkeurig te kunnen analyseren en visualiseren. U kunt wat u in deze zelfstudie hebt geleerd, toepassen om uw gegevens op de juiste manier te sorteren voor uw volgende rapport.

Al het beste,

Greg Decker


Wat is zelf in Python: voorbeelden uit de echte wereld

Wat is zelf in Python: voorbeelden uit de echte wereld

Wat is zelf in Python: voorbeelden uit de echte wereld

Een RDS-bestand opslaan en laden in R

Een RDS-bestand opslaan en laden in R

Je leert hoe je objecten uit een .rds-bestand in R opslaat en laadt. In deze blog wordt ook besproken hoe je objecten uit R naar LuckyTemplates importeert.

First N Business Days Revisited – Een DAX-coderingstaaloplossing

First N Business Days Revisited – Een DAX-coderingstaaloplossing

In deze tutorial over DAX-coderingstaal leert u hoe u de functie GENERATE gebruikt en hoe u de titel van een maat dynamisch wijzigt.

Breng inzichten onder de aandacht met behulp van de Multi Threaded Dynamic Visuals-techniek in LuckyTemplates

Breng inzichten onder de aandacht met behulp van de Multi Threaded Dynamic Visuals-techniek in LuckyTemplates

Deze zelfstudie behandelt hoe u de Multi Threaded Dynamic Visuals-techniek kunt gebruiken om inzichten te creëren op basis van dynamische gegevensvisualisaties in uw rapporten.

Inleiding tot het filteren van context in LuckyTemplates

Inleiding tot het filteren van context in LuckyTemplates

In dit artikel zal ik de filtercontext doornemen. Filtercontext is een van de belangrijkste onderwerpen waarover elke LuckyTemplates-gebruiker in eerste instantie zou moeten leren.

Beste tips voor het gebruik van de apps in LuckyTemplates Online Service

Beste tips voor het gebruik van de apps in LuckyTemplates Online Service

Ik wil laten zien hoe de online service LuckyTemplates Apps kan helpen bij het beheren van verschillende rapporten en inzichten die uit verschillende bronnen zijn gegenereerd.

Analyseer winstmargeveranderingen in de loop van de tijd - analyse met LuckyTemplates en DAX

Analyseer winstmargeveranderingen in de loop van de tijd - analyse met LuckyTemplates en DAX

Leer hoe u wijzigingen in uw winstmarge kunt berekenen met behulp van technieken zoals vertakking van metingen en het combineren van DAX-formules in LuckyTemplates.

Materialisatie-ideeën voor gegevenscaches in DAX Studio

Materialisatie-ideeën voor gegevenscaches in DAX Studio

Deze tutorial bespreekt de ideeën van materialisatie van datacaches en hoe deze de prestaties van DAX beïnvloeden bij het leveren van resultaten.

Zakelijke rapportage met behulp van LuckyTemplates

Zakelijke rapportage met behulp van LuckyTemplates

Als u tot nu toe nog steeds Excel gebruikt, is dit het beste moment om LuckyTemplates te gaan gebruiken voor uw zakelijke rapportagebehoeften.

Wat is LuckyTemplates Gateway? Alles wat u moet weten

Wat is LuckyTemplates Gateway? Alles wat u moet weten

Wat is LuckyTemplates Gateway? Alles wat u moet weten