Cosè il sé in Python: esempi del mondo reale
Cos'è il sé in Python: esempi del mondo reale
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.
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.
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:
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.
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.
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.
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:
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.
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.
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
Imparerai come salvare e caricare oggetti da un file .rds in R. Questo blog tratterà anche come importare oggetti da R a LuckyTemplates.
In questa esercitazione sul linguaggio di codifica DAX, scopri come usare la funzione GENERATE e come modificare dinamicamente il titolo di una misura.
Questo tutorial illustrerà come utilizzare la tecnica di visualizzazione dinamica multi-thread per creare approfondimenti dalle visualizzazioni di dati dinamici nei report.
In questo articolo, esaminerò il contesto del filtro. Il contesto del filtro è uno degli argomenti principali che qualsiasi utente di LuckyTemplates dovrebbe inizialmente conoscere.
Voglio mostrare come il servizio online di LuckyTemplates Apps può aiutare nella gestione di diversi report e approfondimenti generati da varie fonti.
Scopri come elaborare le modifiche al margine di profitto utilizzando tecniche come la ramificazione delle misure e la combinazione di formule DAX in LuckyTemplates.
Questo tutorial discuterà delle idee di materializzazione delle cache di dati e di come influiscono sulle prestazioni dei DAX nel fornire risultati.
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