RANKX Deep Dive: een LuckyTemplates DAX-functie

RANKX Deep Dive: een LuckyTemplates DAX-functie

Vandaag gaan we dieper in op RANKX, een scalaire DAX-functie in LuckyTemplates waarmee u de rangschikking van een specifiek getal kunt retourneren in elke tabelrij die deel uitmaakt van een lijst met getallen. Je kunt de volledige video van deze tutorial onderaan deze blog bekijken.

Inhoudsopgave

Voorbeeldscenario's

We zullen enkele van de belangrijkste scenario's analyseren, inclusief wanneer moet worden verwezen naar een volledige tabel en veldnaam binnen de .

We zullen ook onderzoeken wat er gebeurt wanneer het granulariteitsniveau afneemt en wanneer een sorteervolgorde wordt toegepast op een veld. Ten slotte gaan we dieper in op de best practice voor het verwijzen naar een tabelnaam of een veldnaam langs de tabel en hoe de rangschikking aan de achterkant wordt geëvalueerd.

RANKX Scenario 1: Klantenrangschikking

In ons eerste scenario willen we de rangschikking van onze klanten berekenen en verwijzen naar de volledige klantentabel binnen de RANKX-functie. Uiteindelijk zullen we ontdekken hoe de resultaten worden geëvalueerd.

Dus laten we beginnen met het openen van LuckyTemplates en klikken op de knop Totale verkoopopties onder het tabblad Belangrijkste metingen en vervolgens naar Nieuwe meting gaan . Schrijf een meting voor de klantrangschikking (bijv. "Klantrangschikking =").

U kunt de resultaten bekijken door de maatstaf voor klantrangschikking in de tabel te slepen.

RANKX Deep Dive: een LuckyTemplates DAX-functie

Maar is dit de beste aanpak voor elk scenario? Wat als er twee personen zijn met dezelfde naam maar in verschillende steden? Of wat als we twee plaatsen hebben met dezelfde naam maar verschillende territoria?

RANKX Scenario 2: Stedenranglijst V1

Laten we nu dezelfde benadering toepassen in het eerste scenario. Deze keer passen we het echter toe op de regiotabel waar we twee steden hebben met dezelfde naam maar op twee verschillende locaties.

RANKX Deep Dive: een LuckyTemplates DAX-functie

Zoals je in de afbeelding hierboven kunt zien, hebben we in de regiotabel twee steden met dezelfde naam, maar ze zijn beschikbaar in twee verschillende territoria. Dus wat gebeurt er als we dezelfde stappen uit ons vorige scenario toepassen?

De resultaten zullen er ongeveer zo uitzien:

RANKX Deep Dive: een LuckyTemplates DAX-functie

Nu beginnen we een probleem te zien met onze rangschikkingsformule. Aangezien de RANKX-functie een volledige set tabellen herhaalt, kan het de resultaten voor de steden met dezelfde naam, die beschikbaar zijn in twee verschillende territoria, niet consolideren. Dit resulteert uiteindelijk in een fout.

Om dit probleem op te lossen, moet u verwijzen naar de veldnaam binnen de RANKX-functie en de tabelnaam, net zoals in de onderstaande afbeelding.

RANKX Deep Dive: een LuckyTemplates DAX-functie

Dus hoe heeft het de fout verholpen? Wanneer we verwijzen naar een veldnaam binnen de RANKX-functie, wordt deze alleen door die kolom herhaald en niet over de hele tabel.

Het zal de duplicaten verwijderen, ook al zijn de twee steden beschikbaar in twee verschillende territoria, waardoor ze als één enkele stad worden geconsolideerd.

RANKX Scenario 3: Rangschikking van gebieden

Dus wat gebeurt er als het granulariteitsniveau afneemt?

In dit geval ziet u de fout tijdens het berekenen van de rangschikking op territoriaal niveau. De reden is dat wanneer we alleen naar de tabelnaam verwijzen en de kolomnaam opnieuw negeren, deze wordt herhaald over een hele tabel, waardoor de resultaten op territoriaal niveau niet kunnen worden geconsolideerd.

Om de juiste resultaten op territoriaal niveau te krijgen, moet u verwijzen naar het veld Territoria in de regiotabel. Maar wanneer moet u verwijzen naar het volledige tabelthema en de veldnaam samen met de tabel opnemen?

Wanneer classificatie wordt toegepast op het laagste niveau van granulariteit, kunnen we verwijzen naar de tabelnaam en de veldnaam negeren.

RANKX Deep Dive: een LuckyTemplates DAX-functie

Maar wanneer het granulariteitsniveau afneemt, zullen we samen met de tabelnaam naar de kolomnaam moeten verwijzen. Tot nu toe analyseren we de resultaten alleen in een enkele visual, dat wil zeggen een tabel.

Cities RankingV2: de betere aanpak met behulp van Slicer

Laten we het tweede scenario dupliceren waarbij de linkerkant van de visual alleen verwijst naar een tabelnaam, terwijl de rechterkant verwijst naar de kolomnaam binnen de RANKX-functie. Vervolgens vergelijken we de resultaten door een slicer op die pagina te plaatsen in de vorm van territoria, wat resulteert in de onderstaande afbeelding.

RANKX Deep Dive: een LuckyTemplates DAX-functie

Wanneer we een selectie maken in de slicer, zult u merken dat aan de linkerkant van de tabelvisual het resultaat niet in seriële volgorde wordt weergegeven, aangezien RANKX itereert over de tabel van de hele regio. Aan de rechterkant van de tabel ziet u echter de resultaten in een seriële volgorde.

De reden is dat RANKX alleen itereert over een specifieke tabelkolom, waardoor het de resultaten kan filteren op basis van de selectie die in de slicer is gemaakt. Het is ook een van de belangrijkste dingen om te onthouden.

Als we de algemene rangschikkingsresultaten willen zien, kunnen we alleen verwijzen naar de tabelnaam binnen de RANKX-functie .

Maar als we willen dat onze resultaten in seriële volgorde staan ​​volgens de selectie die in de slicer is gemaakt, dan moeten we ook verwijzen naar een kolomnaam in de functie.

RANKX-scenario 4: productrangschikking

Laten we ten slotte doorgaan met ons laatste scenario. Laten we eens kijken wat er gebeurt als we een productbestelling over een bepaald veld plaatsen en hoe de RANKX de rangschikking aan de achterkant evalueert.

In dit scenario gebruiken we de productnaam uit de productentabel om te analyseren welke onze best presterende producten zijn .

Dus net als in het eerste scenario, moet u een rangschikkingsmaatstaf voor uw producten schrijven (in dit geval goed gebruik van productrangschikking). Als u de productrangschikkingsmaatstaf binnen de visual brengt, ziet u een resultaat zoals in de afbeelding hieronder:

RANKX Deep Dive: een LuckyTemplates DAX-functie

U kunt zien dat hoewel we hebben verwezen naar ons productnaamveld in de RANKX-functie, het de resultaten niet correct evalueert. Dus waarom gebeurt dit? Om deze vraag te beantwoorden, moeten we DAX Studio openen .

RANKX-scenario 5: DAX Studio

Dus laten we DAX studio openen en kijken hoe RANKX de rankingresultaten aan de achterkant evalueert.

In de onderstaande afbeelding heb ik de query van de tabelvisual via de Performance Analyzer gekopieerd en in DAX Studio geplakt. Zoals u in deze query kunt zien, is er ook de productindex, een sorteerveld in de productentabel.

RANKX Deep Dive: een LuckyTemplates DAX-functie

Dus ook al hebben we in onze tabelweergave alleen de productnaam, de totale verkoop en de rangorde gemeten, wordt er standaard naar dit veld verwezen aan de achterkant van de rangschikkingsberekening.

Laten we nu onze maatstaf voor productrangschikking corrigeren door te verwijzen naar het sorteerveld in de RANKX-functie en de resultaten voor de laatste keer bekijken.

RANKX Deep Dive: een LuckyTemplates DAX-functie

Zoals u in de bovenstaande afbeelding kunt zien, worden de resultaten voor de productnamen nu correct geëvalueerd. Dus wanneer we een veld hebben gesorteerd op een ander veld, moeten we verwijzen naar beide velden binnen de RANKX-functie op basis van alle scenario's die we vandaag hebben besproken.

Conclusie

Dit zijn dus enkele van de scenario's bij het gebruik van de RANKX-functie in DAX-berekeningen. Over het algemeen zijn er veel meer manieren waarop u dit kunt doen in een uitgebreide reeks functies.

Het belangrijkste om te onthouden is dat u de context moet begrijpen waarin uw RANKX-functie wordt geplaatst.

RANKX is uitzonderlijk veelzijdig in het berekenen van elke rangschikkingstype-analyse binnen LuckyTemplates. Het maakt ook geavanceerde inzichten mogelijk die indruk maken op de consumenten van uw rapporten en visualisaties.

Al het beste,

Harde Anil Joshi


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