Cosè il sé in Python: esempi del mondo reale
Cos'è il sé in Python: esempi del mondo reale
Ti mostrerò come gestire una tabella dei tassi di cambio in cui alcuni giorni non vengono contabilizzati . Questi giorni potrebbero essere i fine settimana o le vacanze.
Questo potrebbe non essere un problema a volte, soprattutto se l'attività per la quale stai preparando un rapporto non è aperta nei fine settimana e nei giorni festivi. Ma se lo fanno, potresti ritrovarti con totali errati alla fine del mese.
Sapere come gestire i dati mancanti ti consentirà di confrontare equamente le vendite se vengono utilizzate più valute. Potrebbero esserci giorni, ad esempio, in cui pensi che le vendite totali stiano diminuendo perché il valore della valuta è diminuito. In realtà, le vendite totali potrebbero essere basse perché non stai tenendo conto di tutti i giorni del periodo specificato.
In questo esempio, prenderò l' ultimo tasso di cambio disponibile e lo userò nelle date mancanti per riempire lo spazio. Puoi guardare il video completo di questo tutorial in fondo a questo blog.
Sommario
Dati forniti nella tabella dei tassi di cambio
Di seguito è riportata la tabella dei fatti, ovvero la tabella dei tassi di cambio . Utilizza l' euro come valuta di base.
Mostra i dati di gennaio 2016 con il Crossrate associato ogni giorno.
Tutto sembra a posto dal 1° gennaio. Ma quando raggiungo il 26, la data successiva nella riga successiva è il 29.
Ciò significa che mi mancano i dati del 27 e 28 .
Si noti che alcuni potrebbero preferire utilizzare Power Query per gestire questa situazione. Per ora, voglio concentrarmi solo su DAX.
Ora diciamo che voglio usare 0,920 il 27 e il 28. Questo è il Crossrate utilizzato il 26. Come faccio a farlo usando DAX?
Alcuni potrebbero dire che questo può essere fatto facilmente in Excel. Potrebbero avere ragione in una certa misura.
Ma il vantaggio che LuckyTemplates ha su Excel è la capacità di approfondire ulteriormente i dati da diverse prospettive senza dover ripetere o modificare nulla, cosa che molto probabilmente accadrebbe in Excel.
Ti mostrerò tutte le misure che devi prendere in considerazione, così come i diversi passaggi che farei per coprire eventuali dati mancanti dalle tabelle dei tassi di cambio.
Misura del tasso di cambio
Per prima cosa, lascia che ti mostri il mio tavolo principale. Ho già alcuni dati qui, tra cui la data e il tasso di cambio per l'euro .
In questo caso, il tasso di cambio utilizza semplicemente la funzione .
Dato che ho a che fare con un tasso di cambio al giorno, è facile usare funzioni come SUM , , o qualcosa di simile. I dati visualizzati per riga avrebbero perfettamente senso.
L'unico problema qui è cosa accadrà al Total .
Questo mostra il totale come 26.693, il che non ha alcun senso. Sta letteralmente riassumendo tutti i tassi di cambio giornalieri. Per questo motivo, dovrei trovare un modo per scorrere i giorni per ottenere il vero Total .
Quindi esaminerò la mia misura della data della valuta per provare a risolverlo.
Misura della data corrente
Personalmente, eseguo sempre una misura della data corrente che porta la data in cui mi trovo nel contesto del filtro corrente .
Preferisco anche usare . In questo esempio, l'utilizzo della funzione MAX mi darà 1/31 al totale, il che avrebbe più senso dato che è l'ultima data data.
Data dell'ultima valuta
La mia tabella contiene anche la data dell'ultima valuta . Ottengo questo utilizzando la funzione e facendo riferimento alle tabelle FactCurrencyRates e Date .
Sebbene questo mostri la funzione LASTDATE , è anche possibile utilizzare MAX . Utilizza la stessa premessa della tabella Current Date , ma fornisce un momento specifico in relazione alla tabella Currency Rates .
Scorrendo verso il basso, vedo che non ci sono dati per il 27 e il 28 del mese.
Per affrontare quei giorni mancanti, parlerò della colonna Data dell'ultima valuta segnalata .
Data dell'ultima valuta segnalata
La data dell'ultima valuta segnalata determinerà il tasso da utilizzare per i giorni mancanti. Il concetto è che l'ultimo tasso di cambio riportato sarà lo stesso da utilizzare nei giorni con dati mancanti .
Poiché non ci sono dati sia per il 27 che per il 28, ciò significa che verranno applicati i dati per il 26.
Il nostro esempio mostra anche che la data dell'ultima valuta segnalata potrebbe non essere necessariamente il giorno precedente. Poiché non ci sono dati anche per il 27, dovrei comunque tornare al 26 per capire quale tasso utilizzare il 28.
Prima di saltare alla misura che mostra come è stato fatto, ricorda che tutto qui sta accadendo nel contesto di come funziona un filtro. Devo pensare a quali dati specifici voglio concentrarmi.
Dato che sono in fila per il 27 del mese, voglio rimuovere qualsiasi riferimento al filtro e concentrarmi invece sul 26. Ciò significa portare o poiché questi mi consentono di modificare il filtro applicato. Non confonderlo con la funzione , che può solo restringere ulteriormente i dati.
Quindi ecco la misura che ho usato per la data dell'ultima valuta segnalata . Ho usato CALCULATE per questo esempio.
Cerco sempre di trovare quante più variabili possibile. Ho solo bisogno di guardare l'ambito di ogni variabile, poiché le variabili assumono il valore di dove sono definite .
In questo caso, userò la data corrente poiché so che questa variabile non cambierà indipendentemente dalle funzioni che utilizzo.
Si noti che non è necessario trovare questa variabile. È solo un'abitudine che mi consente di controllare l'ambito di ogni variabile che userò nella misura.
Tornando alla misura, come faccio a dire a DAX di rimuovere i filtri per la data corrente e darmi la data dell'ultima valuta registrata ?
Innanzitutto, utilizzerò FILTER per la tabella (DimDate).
La funzione ALL rimuove i filtri applicati, aprendo la tabella DimDate da utilizzare.
Quindi, utilizzo MIN per indicare a DAX che desidero utilizzare la parte della colonna DimDate uguale a Last Currency Date o Current Date .
Cosa succede se la data dell'ultima valuta e la data corrente non coincidono? Quindi utilizzare sempre la data dell'ultima valuta .
Ecco perché tra il 26/1 e il 27/1 la misura prenderà il 26/1. Da qui, la data corretta verrà applicata alla tabella Tassi di valuta per ottenere l' ultimo tasso di valuta riportato .
Ultimo tasso di cambio segnalato
Fammi trascinare l' ultimo tasso di cambio riportato nella mia tabella.
Vedrai che il 27 e il 28 ora utilizzano 0,9200 come Tasso di valuta poiché è lo stesso tasso utilizzato il 26.
Di seguito è riportata la misura che ho utilizzato per l' ultimo tasso di cambio riportato .
Ancora una volta, inizio sempre definendo alcune variabili. In questo caso, utilizzo Currency Selected e Last Reported Currency Date .
Userò la valuta selezionata perché qui ho a che fare con valute diverse. Questo è il motivo per cui ho bisogno di individuare quale valuta specifica viene valutata in un dato momento.
In questo esempio, è possibile accedere alle diverse valute utilizzando lo slicer fornito.
Naturalmente, non deve essere un'affettatrice in uso. Può anche provenire da una tabella o da un oggetto visivo. Ciò che conta è che c'è un filtro che ti permette di vedere i dati in diverse valute.
Per quanto riguarda LastReportedDate , è la stessa cosa di Last Reported Currency Date di cui ho parlato prima.
Per la variabile Rate , ho utilizzato la funzione .
Sto introducendo il Crossrate dalla tabella dei fatti per CurrencyRates .
Dato che ho molte valute in una singola tabella, non posso semplicemente usare la data come unico punto di riferimento. Deve essere una combinazione della valuta giusta e della data giusta.
Questo è il motivo per cui sto anche facendo riferimento al ticker di valuta uguale a Currency Selected .
Sto anche facendo riferimento a LastReportedDate .
Ecco perché guardando la tabella, mostra il 26 tre volte prima di saltare al 29.
Vendite convertite utilizzando l'ultimo tasso segnalato rispetto alla data corrente
Sono ora sul tratto finale, che prevede la conversione delle vendite utilizzando l' ultimo tasso di valuta riportato .
Fondamentalmente, la misura prende solo questo ultimo tasso di valuta riportato e lo moltiplica per la misura di base , che in questo caso è Total Sales .
Una volta applicata la misura, vedrai che queste due date finiscono per essere vuote. Ciò significa che non ci sono vendite in queste date .
Si scopre anche che ci sono vendite il 27 e il 28 (dove prima non c'erano dati sulla valuta).
Poiché ho fatto riferimento all'ultimo tasso di cambio segnalato , questi numeri sono stati convertiti in euro.
Questa volta, ti mostrerò le vendite convertite utilizzando la data corrente.
Questa volta, guarda solo la data corrente invece di prendere in considerazione l' ultima data segnalata .
Dopo aver inserito quella misura nella tabella in un'altra colonna, mostra solo spazi vuoti il 27 e il 28.
Confrontando le vendite convertite tra l'utilizzo dell'Ultima percentuale rapporto e l'utilizzo della Data corrente , il Totale mostra un'enorme differenza.
Laddove le vendite convertite utilizzando la data dell'ultimo rapporto mostrano un totale di oltre 4 milioni, le vendite convertite utilizzando la data corrente mostrano solo 3,8 milioni in totale.
Questo è il motivo per cui è molto importante capire quale variabile stai usando. Se guardi il totale, sembra solo che l'euro abbia subito un duro colpo, abbassando il valore. Ma in realtà, il calo del Totale è dovuto a dati non contabilizzati nella tabella Tassi valuta.
Ripulire i dati
Ora che ho inserito i dati mancanti, ripulirò la tabella.
Ho appena aggiunto qui una colonna Vendite formattate che mostra chiaramente i numeri in euro.
Dal momento che ho eseguito così tanti passaggi, ho accumulato un bel numero di colonne qui.
Ma non tutti questi sono necessari per presentare i dati. Quindi andrò avanti e mi sbarazzerò di quelli rimuovendoli nel riquadro Valori .
Una volta rimossi, mi ritrovo con una tabella più pulita con solo i dati necessari visualizzati.
Nota che posso ancora cambiare la valuta usando l'affettatrice qui a destra.
Per rendere la mia tabella più completa, aggiungerò tutte le altre valute disattivando l' opzione Single Select .
Questo visualizzerà i miei numeri in USD, Euro e Sterline britanniche.
Vedo anche degli spazi vuoti qui che rappresentano i giorni in cui non ci sono vendite.
Li rimuoverò disattivando " Mostra elementi senza dati ".
Ora, la tabella contiene solo righe che rappresentano le date con le vendite.
Questo mi dà un buon confronto dei numeri in base alle diverse valute.
I totali mostrano anche i numeri corretti perché ho usato per scorrere ciascuna riga.
Questo è molto importante. Se non usi SUMX , finirà per aggiungere tutte le colonne senza pensare se viene utilizzato il tasso di cambio corretto.
Creazione di una tabella di conversione di valuta in LuckyTemplates
Logica di valuta multipla in LuckyTemplates: un
formato di esempio LOOKUPVALUE Valute in LuckyTemplates con DAX
Conclusione
Come accennato in precedenza, questo non è necessariamente l'unico modo per gestire i dati mancanti. In realtà ci sono un sacco di altri modi per farlo.
In alcuni casi, ad esempio, è possibile utilizzare i dati dall'inizio del mese e applicare lo stesso numero all'intera tabella dei tassi di cambio. Discuterò di questi altri approcci in futuro in blog separati.
Per ora, ho utilizzato questo approccio perché l'utilizzo dell'ultimo tasso segnalato ha più senso per me. Credo sia l'opzione più intuitiva.
Una cosa che vorrei anche sottolineare è la necessità di comprendere tutto da un contesto di filtro. Come faccio a sovrascrivere il filtro? Come inserisco gli ultimi dati riportati? Questi ti aiuteranno a capire come ottenere i numeri giusti alla fine.
Ti auguro il meglio,
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