RANKX Deep Dive: una funzione DAX di LuckyTemplates

RANKX Deep Dive: una funzione DAX di LuckyTemplates

Oggi approfondiremo RANKX, una funzione DAX scalare in LuckyTemplates che consente di restituire la classifica di un numero specifico in ogni riga della tabella che fa parte di un elenco di numeri. Puoi guardare il video completo di questo tutorial in fondo a questo blog.

Sommario

Esempi di scenari

Analizzeremo alcuni degli scenari più importanti, incluso quando fare riferimento a un'intera tabella e al nome di un campo all'interno della .

Esamineremo anche cosa succede quando il livello di granularità diminuisce e quando viene applicato un ordinamento su un campo. Infine, daremo un'occhiata più da vicino alle migliori pratiche nel fare riferimento a un nome di tabella o a un nome di campo lungo la tabella e come viene valutata la classifica nel back-end.

RANKX Scenario 1: Classifica dei clienti

Nel nostro primo scenario, vogliamo calcolare la classifica dei nostri clienti e fare riferimento all'intera tabella dei clienti all'interno della funzione RANKX. Alla fine, scopriremo come vengono valutati i risultati.

Iniziamo quindi aprendo LuckyTemplates e facendo clic sul pulsante Total Sales options nella scheda Key Measures , quindi andiamo su New Measure . Scrivi una misura per la classifica del cliente (ad esempio, "Classifica del cliente =").

È possibile visualizzare i risultati trascinando la misura del ranking del cliente all'interno della tabella.

RANKX Deep Dive: una funzione DAX di LuckyTemplates

Ma è questo l'approccio migliore per ogni scenario? E se ci sono due persone con lo stesso nome ma in città diverse? O se avessimo due luoghi con lo stesso nome ma territori diversi?

RANKX Scenario 2: Classifica città V1

Ora, applichiamo lo stesso approccio nel primo scenario. Questa volta, tuttavia, lo applicheremo sulla tabella delle regioni in cui abbiamo due città con lo stesso nome ma in due località diverse.

RANKX Deep Dive: una funzione DAX di LuckyTemplates

Come puoi vedere nell'immagine sopra, all'interno della tabella delle regioni, abbiamo due città con lo stesso nome, ma sono disponibili in due territori diversi. Quindi cosa succede quando applichiamo gli stessi passaggi del nostro scenario precedente?

I risultati saranno simili a questo:

RANKX Deep Dive: una funzione DAX di LuckyTemplates

Ora iniziamo a vedere un problema con la nostra formula di ranking. Poiché la funzione RANKX esegue l'iterazione su un intero set di tabelle, non può consolidare i risultati per le città con lo stesso nome, che sono disponibili in due territori diversi. Questo alla fine si traduce in un errore.

Per risolvere questo problema, devi fare riferimento al nome del campo all'interno della funzione RANKX e al nome della tabella, proprio come nell'immagine qui sotto.

RANKX Deep Dive: una funzione DAX di LuckyTemplates

Quindi, come ha risolto l'errore? Quando facciamo riferimento a un nome di campo all'interno della funzione RANKX, lo ripeterà solo attraverso quella colonna e non sull'intera tabella.

Rimuoverà i duplicati anche se le due città sono disponibili in due territori diversi, consolidandole così come un'unica città.

RANKX Scenario 3: Classifica Territori

Quindi cosa succede quando il livello di granularità diminuisce?

In questo caso visualizzerai l'errore durante il calcolo della graduatoria a livello territoriale. Il motivo è che quando facciamo riferimento solo al nome della tabella e ignoriamo nuovamente il nome della colonna, lo itera su un'intera tabella, non riuscendo così a consolidare i risultati a livello territoriale.

Per ottenere i risultati corretti a livello territoriale, è necessario fare riferimento al campo territori all'interno della tabella delle regioni. Ma quando dovresti fare riferimento all'intero tema della tabella e includere il nome del campo insieme alla tabella?

Quando la classificazione viene applicata al livello di granularità più basso, possiamo fare riferimento al nome della tabella e ignorare il nome del campo.

RANKX Deep Dive: una funzione DAX di LuckyTemplates

Ma quando il livello di granularità diminuisce, dovremo fare riferimento al nome della colonna insieme al nome della tabella. Finora, stiamo solo analizzando i risultati in un singolo oggetto visivo, ovvero una tabella.

Cities RankingV2: l'approccio migliore con Slicer

Duplichiamo il secondo scenario in cui il lato sinistro dell'oggetto visivo farà riferimento solo a un nome di tabella, mentre il lato destro farà riferimento al nome della colonna all'interno della funzione RANKX. Confronteremo quindi i risultati portando un'affettatrice su quella pagina sotto forma di territori, che si traduce nell'immagine qui sotto.

RANKX Deep Dive: una funzione DAX di LuckyTemplates

Quando effettuiamo una selezione nell'affettatrice, noterai che sul lato sinistro della tabella visiva, non fornisce il risultato in ordine seriale poiché RANKX sta iterando sulla tabella dell'intera regione. Sul lato destro dell'oggetto visivo della tabella, invece, vedrai i risultati in ordine seriale.

Il motivo è che RANKX sta iterando solo su una specifica colonna della tabella, consentendogli di filtrare i risultati in base alla selezione effettuata nell'affettatrice. È anche una delle cose più importanti da ricordare.

Se vogliamo vedere i risultati della classifica generale, possiamo fare riferimento solo al nome della tabella all'interno della funzione RANKX .

Ma se vogliamo che i nostri risultati siano in ordine seriale secondo la selezione effettuata nell'affettatrice, dobbiamo anche fare riferimento a un nome di colonna all'interno della funzione.

RANKX Scenario 4: Classifica dei prodotti

Infine, procediamo con il nostro scenario finale. Esaminiamo cosa succede quando ordiniamo un prodotto su un determinato campo e come RANKX valuta la classifica nel back-end.

In questo scenario, stiamo utilizzando il nome dei prodotti dalla tabella dei prodotti per analizzare quali sono i nostri prodotti con le migliori prestazioni .

Quindi, proprio come nel primo scenario, devi scrivere una misura di classificazione per i tuoi prodotti (in questo caso, usa la classificazione dei prodotti). Se porti la misura della classifica dei prodotti all'interno dell'oggetto visivo, vedrai un risultato proprio come l'immagine qui sotto:

RANKX Deep Dive: una funzione DAX di LuckyTemplates

Puoi vedere che anche se abbiamo fatto riferimento al campo del nome del nostro prodotto all'interno della funzione RANKX, non sta valutando correttamente i risultati. Allora perché sta succedendo questo? Per rispondere a questa domanda, dobbiamo aprire DAX Studio .

RANKX Scenario 5: DAX Studio

Quindi apriamo DAX Studio e vediamo come RANKX valuta i risultati della classifica nel back-end.

Nell'immagine seguente, ho copiato la query dell'oggetto visivo della tabella tramite Performance Analyzer e l'ho incollata in DAX Studio. Come puoi vedere in questa query, c'è anche l'indice dei prodotti, un campo di ordinamento all'interno della tabella dei prodotti.

RANKX Deep Dive: una funzione DAX di LuckyTemplates

Pertanto, anche se nell'oggetto visivo della tabella abbiamo inserito solo il nome del prodotto, le vendite totali e la misura della classifica, a questo campo viene fatto riferimento per impostazione predefinita nel back-end del calcolo della classifica.

Quindi ora, correggiamo la nostra misura di classificazione del prodotto facendo riferimento al campo di ordinamento all'interno della funzione RANKX e vediamo i risultati per l'ultima volta.

RANKX Deep Dive: una funzione DAX di LuckyTemplates

Come puoi vedere nell'immagine sopra, i risultati per i nomi dei prodotti vengono ora valutati correttamente. Pertanto, ogni volta che abbiamo un campo ordinato in base a un altro campo, dobbiamo fare riferimento a entrambi i campi all'interno della funzione RANKX in base a tutti gli scenari che abbiamo discusso oggi.

Conclusione

Quindi questi sono alcuni degli scenari quando si utilizza la funzione RANKX nei calcoli DAX. Nel complesso, ci sono molti altri modi per farlo in una vasta gamma di funzioni.

La cosa più importante da ricordare è che devi capire il contesto in cui viene inserita la tua funzione RANKX.

RANKX è eccezionalmente versatile nel calcolo di qualsiasi tipo di analisi di classificazione all'interno di LuckyTemplates. Consente inoltre approfondimenti avanzati che colpiscono i consumatori dei tuoi report e visualizzazioni.

Ti auguro il meglio,

Duro Anil Joshi


Cosè il sé in Python: esempi del mondo reale

Cosè il sé in Python: esempi del mondo reale

Cos'è il sé in Python: esempi del mondo reale

Come salvare e caricare un file RDS in R

Come salvare e caricare un file RDS in R

Imparerai come salvare e caricare oggetti da un file .rds in R. Questo blog tratterà anche come importare oggetti da R a LuckyTemplates.

Rivisitazione dei primi N giorni lavorativi: una soluzione per il linguaggio di codifica DAX

Rivisitazione dei primi N giorni lavorativi: una soluzione per il linguaggio di codifica DAX

In questa esercitazione sul linguaggio di codifica DAX, scopri come usare la funzione GENERATE e come modificare dinamicamente il titolo di una misura.

Mostra approfondimenti utilizzando la tecnica di visualizzazione dinamica multi-thread in LuckyTemplates

Mostra approfondimenti utilizzando la tecnica di visualizzazione dinamica multi-thread in LuckyTemplates

Questo tutorial illustrerà come utilizzare la tecnica di visualizzazione dinamica multi-thread per creare approfondimenti dalle visualizzazioni di dati dinamici nei report.

Introduzione al filtraggio del contesto in LuckyTemplates

Introduzione al filtraggio del contesto in LuckyTemplates

In questo articolo, esaminerò il contesto del filtro. Il contesto del filtro è uno degli argomenti principali che qualsiasi utente di LuckyTemplates dovrebbe inizialmente conoscere.

I migliori suggerimenti per lutilizzo delle app nel servizio online LuckyTemplates

I migliori suggerimenti per lutilizzo delle app nel servizio online LuckyTemplates

Voglio mostrare come il servizio online di LuckyTemplates Apps può aiutare nella gestione di diversi report e approfondimenti generati da varie fonti.

Analizza le variazioni del margine di profitto nel tempo: analisi con LuckyTemplates e DAX

Analizza le variazioni del margine di profitto nel tempo: analisi con LuckyTemplates e DAX

Scopri come elaborare le modifiche al margine di profitto utilizzando tecniche come la ramificazione delle misure e la combinazione di formule DAX in LuckyTemplates.

Idee di materializzazione per cache di dati in DAX Studio

Idee di materializzazione per cache di dati in DAX Studio

Questo tutorial discuterà delle idee di materializzazione delle cache di dati e di come influiscono sulle prestazioni dei DAX nel fornire risultati.

Reporting aziendale tramite LuckyTemplates

Reporting aziendale tramite LuckyTemplates

Se finora utilizzi ancora Excel, questo è il momento migliore per iniziare a utilizzare LuckyTemplates per le tue esigenze di reportistica aziendale.

Che cosè il gateway LuckyTemplates? Tutto quello che devi sapere

Che cosè il gateway LuckyTemplates? Tutto quello che devi sapere

Che cos'è il gateway LuckyTemplates? Tutto quello che devi sapere