LuckyTemplates Power Query: rimozione di righe duplicate

LuckyTemplates Power Query: rimozione di righe duplicate

In questo blog, ti mostrerò come rimuovere le righe duplicate nella LuckyTemplates Power Query in base alle condizioni. Puoi guardare il video completo di questo tutorial in fondo a questo blog.

Questo esempio è tratto da una domanda che è stata sollevata sul . Il membro dispone di dati transazionali e desidera rimuovere le righe che si annullano a vicenda.

Esistono due tipi di transazione distinti, uno per l'ingresso e uno per l'uscita. Ha anche aggiunto il conteggio dei movimenti. E sulla base di ciò, ha formulato tre scenari.

LuckyTemplates Power Query: rimozione di righe duplicate

Lo scenario uno si basa su due righe. Se si annullano a vicenda, entrambe le righe devono essere rimosse. In caso contrario, è necessario mantenere entrambe le righe.

Gli scenari due e tre si basano su una combinazione di righe, che in parte si annullano a vicenda. Tali righe devono essere rimosse in base al criterio first-in-first-out in modo da conservare solo le transazioni in entrata più recenti.

Fondamentalmente, stiamo ripetendo la stessa logica più e più volte. Dovremmo essere in grado di progettare un unico approccio adatto a tutti questi scenari.

Alcune delle cose che faremo sono aggiungere una colonna con quantità assolute e raggruppare per "aggiungere una colonna saldo quantità" e una tabella nidificata utilizzando l'opzione "tutte le righe". Trasformeremo anche quelle tabelle nidificate, ordineremo il tipo di movimento e la data di registrazione, creeremo un totale parziale e manterremo le righe solo in base a una condizione.

L'ho valutato a un livello intermedio perché la maggior parte delle trasformazioni che possiamo fare qui è usando l'interfaccia utente. Detto questo, passiamo alla LuckyTemplates Power Query.

Sommario

Aggiunta di colonne con quantità assolute nella query di alimentazione

Inizieremo aggiungendo una colonna con quantità assolute. Seleziona la colonna Quantità , quindi sulla barra multifunzione o sulla scheda Aggiungi colonna , vai su Scientifico , quindi fai clic su Valore assoluto .

LuckyTemplates Power Query: rimozione di righe duplicate

Rinominerò questa colonna nella barra della formula.

LuckyTemplates Power Query: rimozione di righe duplicate

Raggruppa per indice ID e quantità assoluta

Ora possiamo raggruppare per indice ID e quantità assoluta. Selezionare ID Index , quindi tenere premuto MAIUSC o Ctrl per effettuare una selezione multipla, quindi fare clic su Abs qty (quantità assoluta).

LuckyTemplates Power Query: rimozione di righe duplicate

Troverai Raggruppa per nella scheda Trasforma.

LuckyTemplates Power Query: rimozione di righe duplicate

Ma puoi anche trovarlo nella scheda Home.

LuckyTemplates Power Query: rimozione di righe duplicate

Fare clic su di esso e ora aggiungeremo una nuova colonna. Non è un "conteggio", ma sarà la "somma" della quantità. Quindi, rinominiamolo in Qty (quantity) Balance . Sarà una somma della colonna della quantità. E poi, aggiungeremo un'altra aggregazione, ma sarà speciale, quindi selezioneremo All Rows . Diamo anche un nome a questa colonna ( AllRows ). Quindi, premere OK.

LuckyTemplates Power Query: rimozione di righe duplicate

Se clicchiamo nello spazio bianco nella tabella, vediamo un'anteprima della tabella nidificata in basso. Vediamo che le quantità per questa tabella nidificata si annullano a vicenda e il saldo della quantità è zero.

LuckyTemplates Power Query: rimozione di righe duplicate

Se osserviamo la successiva tabella nidificata (quindi fai clic a lato nello spazio bianco della riga successiva), vediamo che la colonna della quantità non si annulla a vicenda e un saldo della quantità è maggiore di zero.

LuckyTemplates Power Query: rimozione di righe duplicate

Aggiungiamo una colonna personalizzata in modo da poterla utilizzare successivamente per le nostre trasformazioni di tabelle nidificate. Quindi, seleziona Aggiungi colonna personalizzata .

LuckyTemplates Power Query: rimozione di righe duplicate

Rinominiamo quella colonna in Trasformazioni e aggiungeremo zero (0) come segnaposto. Quindi, fare clic su OK.

LuckyTemplates Power Query: rimozione di righe duplicate

Trasformazione delle tabelle nidificate in LuckyTemplates Power Query

Ora siamo pronti per creare la logica per trasformare quelle tabelle nidificate. Ma non vogliamo scriverne un mucchio e non ne abbiamo bisogno.

Possiamo utilizzare l'interfaccia utente per la maggior parte. Se costruiamo la logica per quelle trasformazioni in una query separata, lo scenario più elaborato che avevamo era quello con tre o quattro righe.

Ora, se clicco sul lato destro nell'ultima riga, vedo che questa tabella ha quattro righe. Quindi, possiamo usarlo per costruire le nostre trasformazioni.

LuckyTemplates Power Query: rimozione di righe duplicate

Fare clic con il pulsante destro del mouse sul lato nello spazio bianco e selezionare Aggiungi come nuova query .

LuckyTemplates Power Query: rimozione di righe duplicate

Vediamo che la tabella nidificata è ora espansa ed è stata aggiunta come nuova query e possiamo usarla per costruire la logica di cui abbiamo bisogno.

LuckyTemplates Power Query: rimozione di righe duplicate

Tipo di movimento di smistamento e data di registrazione

Ora, la prima cosa che dobbiamo fare è ordinare in base al tipo di movimento . Scegliamo decrescente . In questo modo le transazioni in uscita saranno sempre in primo piano.

LuckyTemplates Power Query: rimozione di righe duplicate

Successivamente, ordineremo la data di registrazione come ascendente , assicurandoci che se omettiamo righe, sarà sempre fatto secondo il principio FIFO (first in first out).

LuckyTemplates Power Query: rimozione di righe duplicate

Creazione di un totale parziale

Per identificare le righe che rimuoveremo, aggiungerò un totale parziale da disabilitare e possiamo usare un List.FirstN per quell'attività. Questa funzione crea un elenco basato su un altro elenco, in cui gli elementi principali vengono mantenuti in base a un numero specifico oa un criterio.

LuckyTemplates Power Query: rimozione di righe duplicate

Torniamo alla nostra domanda. Abbiamo bisogno di due cose per List.FirstN. Innanzitutto, abbiamo bisogno di quell'elenco e quell'elenco è la nostra colonna Quantità . Se faccio clic con il pulsante destro del mouse sull'intestazione della colonna Quantità, otteniamo l'opzione Aggiungi come NewQuery .

LuckyTemplates Power Query: rimozione di righe duplicate

E qui vediamo il codice di cui abbiamo bisogno per generare quell'elenco. Nel passaggio applicato, puoi vedere che punta all'ultimo passaggio e quindi identifica la colonna in quelle parentesi.

LuckyTemplates Power Query: rimozione di righe duplicate

La seconda parte di cui abbiamo bisogno per List.FirstN è un numero per identificare quanti numeri tenere da quell'elenco. Possiamo usare l'indice per questo, quindi aggiungerò una colonna indice da una (1) per questa riga.

LuckyTemplates Power Query: rimozione di righe duplicate

Quindi, per il numero 1, manterrà il numero sulla prima riga nella colonna Quantità e così via. E ora possiamo riassumere.

LuckyTemplates Power Query: rimozione di righe duplicate

Aggiungiamo una colonna personalizzata e chiamiamola Running Total . Usiamo List.FirstN qui, e possiamo vedere che il primo parametro era quell'elenco, la colonna Quantity. Dobbiamo puntare all'ultimo passaggio, e l'ultimo passaggio è l' Added Index .

LuckyTemplates Power Query: rimozione di righe duplicate

Abbiamo identificato la colonna che vogliamo, e questa è la nostra colonna Quantità. Il nostro conteggio è nella colonna Indice.

LuckyTemplates Power Query: rimozione di righe duplicate

Ora restituisce un elenco. Se clicchiamo a lato nello spazio bianco, possiamo vedere il contenuto di quella lista. Per il primo record, ha mantenuto solo la riga superiore di quell'elenco. Per il secondo record, ha mantenuto le prime due file.

LuckyTemplates Power Query: rimozione di righe duplicate

Ora tutto ciò che dobbiamo fare è sommare queste quantità e possiamo usare Lists.Sum per farlo. Quindi, lo aggiungerò nella barra della formula. E inserirò anche Type .

LuckyTemplates Power Query: rimozione di righe duplicate

Filtrare le righe in base a una condizione

Con questo totale parziale, possiamo identificare le righe che vogliamo conservare. Vogliamo mantenere solo le righe maggiori di zero, quindi aggiungiamo una condizione di filtro.

LuckyTemplates Power Query: rimozione di righe duplicate

Ora possiamo rimuovere le nostre colonne di supporto. Selezionare Indice e totale parziale, quindi fare clic su Rimuovi colonne.

LuckyTemplates Power Query: rimozione di righe duplicate

Nell'editor avanzato, ora possiamo copiare il codice che abbiamo creato. Aprirò l' editor avanzato e possiamo vedere che questo è il nostro passaggio diviso. Quindi, possiamo selezionare e copiare tutto ciò che c'è sotto.

LuckyTemplates Power Query: rimozione di righe duplicate

Ora torniamo alla nostra query originale. Di nuovo, apri l'editor avanzato. E invece del segnaposto, spostiamoci su una nuova riga. Userò l'espressione " let " perché può acquisire valori da calcoli intermedi in variabili. Quindi, "lascia" e poi vai su una nuova riga e incolla le mie trasformazioni. Inoltre dichiarerò Type .

LuckyTemplates Power Query: rimozione di righe duplicate

Il codice evidenziato sopra punta alla nostra tabella nidificata espansa, che si trova all'interno della colonna Tutte le righe. Quindi, lo indicherò, sostituendo questo codice evidenziato in AllRows .

Quindi la nostra colonna di trasformazione ora ha tabelle nidificate. Costruiamo la nostra query in base all'ultima riga, giusto? E questo conteneva quattro righe quando abbiamo iniziato e ne conteneva solo due. Abbiamo anche quelle quantità bilanciate a zero, giusto? E ora ha un tavolo vuoto.

LuckyTemplates Power Query: rimozione di righe duplicate

Possiamo rimuoverli filtrando sulla colonna Saldo quantità. Non vogliamo che il saldo della quantità sia uguale a zero.

LuckyTemplates Power Query: rimozione di righe duplicate

E poi, selezionerò la mia colonna di trasformazione e rimuoverò altre colonne. Ora posso espandere le mie tabelle nidificate di trasformazione. Non usare il nome della colonna originale come prefisso e premi ok.

LuckyTemplates Power Query: rimozione di righe duplicate

Nella scheda Trasforma, seleziona Tipo di dati e abbiamo finito. Ed è così che ripulisci i dati transazionali.


Nozioni di base su unpivot e pivot in LuckyTemplates: revisione dell'editor di query
Suggerimenti pratici per l'utilizzo dell'editor avanzato di LuckyTemplates
Trasformazioni avanzate in LuckyTemplates

Conclusione

In questo tutorial, ti ho mostrato come ripulire i dati transazionali, in particolare rimuovendo le righe duplicate. Questa è un'ottima tecnica che puoi utilizzare quando utilizzi LuckyTemplates Power Query.

Spero ti sia piaciuto questo. Guarda il tutorial video completo qui sotto per maggiori dettagli. Controllare anche i collegamenti in basso per altri contenuti correlati all'editor di Power Query di LuckyTemplates.

Saluti!

Melissa


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