RANKX In LuckyTemplates: sviluppo di tiebreaker personalizzati

RANKX In LuckyTemplates: sviluppo di tiebreaker personalizzati

Ti mostrerò come creare tiebreaker personalizzati quando usi RANKX in LuckyTemplates .

Ottenere un pareggio in una parte critica dei risultati è uno scenario comune. Ci sono un certo numero di tiebreaker che puoi usare, ma è importante scegliere quello che ha più senso per ogni situazione. Puoi guardare il video completo di questo tutorial in fondo a questo blog.

Sommario

Il ruolo di RANKX in LuckyTemplates

Ho l'abitudine di confrontare le funzioni DAX con i lavori nella vita reale. Questo mi aiuta ad associare ogni funzione a ciò che fa all'interno di LuckyTemplates.

RANKX valuta e ordina gli elementi secondo uno specifico insieme di criteri. Nel mondo reale, può essere paragonato a un giudice in una mostra canina che chiede ai partecipanti di allinearsi di conseguenza.

RANKX In LuckyTemplates: sviluppo di tiebreaker personalizzati

Nello scenario che userò oggi, userò RANKX come giudice per un ipotetico concorso di vendita. I dati riguardano i numeri di un team di vendita e il premio va alla persona con le vendite totali più alte per il mese .

Per mantenere le cose interessanti, supponiamo che il primo premio sia una Cadillac El Dorado mentre il secondo premio sia un set di coltelli da bistecca. Questo è un enorme divario di valore, il che significa che potrebbe esserci un solo vincitore.

Guardando il mio tavolo, ho un elenco di tutti i venditori del team di vendita.

RANKX In LuckyTemplates: sviluppo di tiebreaker personalizzati

Aggiungerò i dati per Total Sales di ogni persona .

RANKX In LuckyTemplates: sviluppo di tiebreaker personalizzati

Questa è la misura RANKX che sto applicando a questa tabella.

RANKX In LuckyTemplates: sviluppo di tiebreaker personalizzati

È solo una configurazione RANKX di base che utilizza in modo da non includere il totale quando ordino i ranghi.

dei venditori viene classificato in base alle vendite totali . Questi sono disposti in ordine DESC . Qui, sto usando Skip nel caso ci sia un pareggio.

Alcuni potrebbero usare Dense invece di Skip , ma in questo caso nessuno dei due aiuta effettivamente.

Salta contro denso

Per dimostrare in che modo Salta influisce sulla misura, trascinerò e rilascerò i Gradi nella tabella.

RANKX In LuckyTemplates: sviluppo di tiebreaker personalizzati

Quindi, ordinerò i dati in base a Rank .

RANKX In LuckyTemplates: sviluppo di tiebreaker personalizzati

La tabella mostra un pareggio per il primo posto. Ma non è stato un grande mese per il team di vendita, quindi il manager non può permettersi di regalare 2 Cadillac El Dorados. Ciò significa che devo inventare un pareggio per decidere chi avrà la macchina e chi i coltelli da bistecca.

Jasper e Max sono in cima, pari al numero 1. Dato che ho usato Skip, vedrai che la posizione sale a 3 dopo i due 1 in cima . Questo non funziona per me perché mi lascia ancora con 2 vincitori.

RANKX In LuckyTemplates: sviluppo di tiebreaker personalizzati

Cosa succede se uso Dense invece di Skip ?

RANKX In LuckyTemplates: sviluppo di tiebreaker personalizzati

Se uso Dense , la cravatta stessa non ne risente. Ma invece del numero 3 dopo il pareggio, mostra il numero 2 .

RANKX In LuckyTemplates: sviluppo di tiebreaker personalizzati

Evidentemente Dense non funziona neanche in questo caso. Ciò significa che avrei bisogno di applicare un tiebreaker personalizzato.

La scelta di un pareggio personalizzato

Un buon tiebreaker personalizzato è definito da due caratteristiche principali.

In primo luogo, è necessario differenziare in modo significativo gli elementi legati. Deve essere un fattore che separa i due o più elementi che sono legati.

In secondo luogo, non dovrebbe alterare il rango o l'ordine degli elementi che non sono legati.

Pensando a questi due aspetti, è facile trovare una serie di spareggi.

Le vendite totali sono il nostro principale fattore di ranking.

RANKX In LuckyTemplates: sviluppo di tiebreaker personalizzati

Quindi devo pensare ad altri fattori che potrebbero essere usati per rompere il pareggio causato dai dati simili nelle prime 2 righe.

Il numero di vendite potrebbe essere uno. Chi è il più spaccone? Chi ha ottenuto il maggior numero di clienti?

È anche possibile esaminare la vendita massima controllando chi ha ottenuto i conti più grandi.

Potrei anche guardare le vendite medie.

In questo caso, ho deciso di andare con le vendite mediane . Non è così influenzato dai valori anomali provenienti dalla fascia alta o bassa. Ciò significa che può fornire una migliore misura della tendenza centrale.

Creazione di uno spareggio personalizzato

C'è una discreta quantità di DAX nella creazione del tiebreaker, ma il concetto è semplice.

RANKX In LuckyTemplates: sviluppo di tiebreaker personalizzati

Ho Ranking2 come variabile. Ho anche usato HASONEVALUE per lo stesso motivo per cui l'ho usato prima nel pattern RANKX primario. L'unica differenza qui è che sto usando Median Sales questa volta invece di Total Sales .

Successivamente, prendo il risultato di quella variabile e lo divido per 100.

RANKX In LuckyTemplates: sviluppo di tiebreaker personalizzati

Poiché ho numeri interi nelle mie vendite totali, posso giocare con la prima e la seconda cifra decimale per rompere il pareggio. Dividendolo per cento prende i numeri oltre la virgola decimale in modo da differenziare i numeri in parità in cima senza influenzare il resto dei risultati.

Questo ci lascia con i primi ranghi che mostrano 0,01, 0,02 e così via. Quindi lo capovolgerò in modo che la classifica più alta ottenga il punteggio più alto nel tie-break.

Quindi, all'interno di HASONEVALUE , sottrarrò RankScale da 1 .

RANKX In LuckyTemplates: sviluppo di tiebreaker personalizzati

Quando lo applico al tavolo, vedrai che ora ho due punti decimali sotto il mio RANKX Tiebreaker .

RANKX In LuckyTemplates: sviluppo di tiebreaker personalizzati

Trascinerò anche le mie vendite mediane nella tabella per mostrarti più chiaramente l'impatto del nostro spareggio.

RANKX In LuckyTemplates: sviluppo di tiebreaker personalizzati

Guardando questi numeri, in realtà mostra che né Max né Jasper hanno ottenuto i punteggi più alti. In realtà era Martin Perry.

Ma ricorda che questo è solo un pareggio e le vendite totali rimangono ancora il principale fattore di classifica . Ciò significa che dovrei solo confrontare i numeri per le file in parità .

RANKX In LuckyTemplates: sviluppo di tiebreaker personalizzati

Quindi aggiungerò solo le mie Total Sales e il RANKX Tiebreaker per ottenere le cifre per la colonna Total Sales Tiebreak .

RANKX In LuckyTemplates: sviluppo di tiebreaker personalizzati

Eseguirò RANKX sulle nuove vendite totali con il tiebreaker applicato e ordinerò i dati.

RANKX In LuckyTemplates: sviluppo di tiebreaker personalizzati

Ora mostra una corsa completa da 1 a n senza elementi legati.

Utilizzo della funzione RAND per rompere i pareggi

Ci possono essere casi in cui un numero generato casualmente può servire da spareggio.

Un esempio potrebbe essere se desideri un focus group che includa una selezione casuale tra i primi 20 venditori. Se ci sono pareggi all'interno del gruppo, è ragionevole usare solo un numero casuale come spareggio.

Ma il problema con Power Query e DAX in generale è che le funzioni casuali si comportano in modo diverso . Non otterrai i risultati che ti aspetti, specialmente se usi all'interno di una funzione di iterazione.

RAND restituisce un numero casuale compreso tra 0 e 1 . Quindi, se decidi che lo scenario su cui stai lavorando ha bisogno di un numero generato casualmente per rompere il pareggio, sarebbe idealmente fatto in questa parte della misura.

RANKX In LuckyTemplates: sviluppo di tiebreaker personalizzati

Invece di solo Total Sales , questo dovrebbe mostrare Total Sales più RAND . Ma ancora una volta, in questo particolare scenario, non mi darà il risultato finale della classifica di cui ho bisogno.


Considerazioni su RANKX – LuckyTemplates e concetti di formula DAX
Una comprensione più approfondita di RANKX avanzato
Creazione di tabelle di classificazione dinamiche utilizzando RANKX in LuckyTemplates

Conclusione

Come hai visto in questo esempio, risolvere un pareggio quando usi RANKX in LuckyTemplates è abbastanza semplice. Il trucco sta nel capire quale tiebreaker personalizzato dà i risultati più logici.

In futuro farò altri tutorial su altri tiebreaker, in particolare sull'utilizzo di RAND in uno scenario di campionamento. Credo che valga la pena di approfondire.

Nel frattempo, spero che l'utilizzo di questo approccio funzioni per te se stai lavorando su uno scenario simile al momento o se incontri qualcosa di simile in futuro.

Ti auguro il meglio

***** Imparare LuckyTemplates? *****







Power Automate si applica a ogni azione nei flussi di lavoro

Power Automate si applica a ogni azione nei flussi di lavoro

Scopri l

Tecniche di modellazione dei dati per organizzare le misure DAX

Tecniche di modellazione dei dati per organizzare le misure DAX

Tecniche di modellazione dei dati per organizzare meglio le misure DAX per un flusso di lavoro più efficiente.

Filtro Power Apps: cosè e come si usa?

Filtro Power Apps: cosè e come si usa?

Scopri come utilizzare la funzione di filtro in Power Apps e come incorporarla nelle formule esistenti all

Come commentare più righe in Python: una guida semplice e veloce

Come commentare più righe in Python: una guida semplice e veloce

Come commentare più righe in Python: una guida semplice e veloce

Connettori Power Automate: numero, testo e data e ora

Connettori Power Automate: numero, testo e data e ora

Acquisisci familiarità con i connettori Power Automate per la manipolazione di numeri, testo e date/ore.

Budget Vs Actual Vs Last Year - Suggerimenti per la rendicontazione finanziaria

Budget Vs Actual Vs Last Year - Suggerimenti per la rendicontazione finanziaria

Ora, è molto facile studiare il budget rispetto all

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 articolo tratta anche come importare oggetti da R a LuckyTemplates.

Che cosè Power Query e M Language: una panoramica dettagliata

Che cosè Power Query e M Language: una panoramica dettagliata

Scopri tutto su Power Query e il linguaggio M per la trasformazione e la preparazione dei dati nel desktop di LuckyTemplates.

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

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.