Creazione di una funzione di pulizia del testo personalizzata in Power Query

Creazione di una funzione di pulizia del testo personalizzata in Power Query

In questo post del blog, daremo un'occhiata più da vicino a una funzione personalizzata per la pulizia del testo che ho creato per la nostra serie in corso su LuckyTemplates TV chiamata . Puoi guardare il video completo di questo tutorial in fondo a questo blog.

Per la settimana n. 2, abbiamo alcuni dati disordinati che devono essere ripuliti. Il nostro obiettivo qui è ripulire tutti i valori di testo in entrambe le colonne.

Per questo compito, ho creato una funzione di testo pulito.

Creazione di una funzione di pulizia del testo personalizzata in Power Query

Ma prima, diamo una rapida occhiata al codice M.

Creazione di una funzione di pulizia del testo personalizzata in Power Query

Questa funzione accetta un parametro chiamato myText. Il suo valore dovrebbe essere di tipo testo e la funzione dovrebbe restituire un valore di testo perché non tutte le variabili elencate di seguito restituiranno un valore di testo.

Creazione di una funzione di pulizia del testo personalizzata in Power Query

La dichiarazione del tipo restituito genererà un errore. Per evitare che si verifichi quell'errore, posso commentarlo per ora.

Creazione di una funzione di pulizia del testo personalizzata in Power Query

Se vogliamo vedere cosa restituisce la prima variabile, tutto ciò che dobbiamo fare è riferirci ad essa per nome, dopo la clausola in. Quindi copio la variabile ToRemove, la incollo nella riga inferiore e premo OK.

Creazione di una funzione di pulizia del testo personalizzata in Power Query

Per vedere il risultato di quella funzione, dobbiamo invocarlo. Quindi aggiungiamo una colonna personalizzata a questa query.

Creazione di una funzione di pulizia del testo personalizzata in Power Query

Quindi invoca la nostra funzione, seleziona questa colonna unita e premi OK.

Creazione di una funzione di pulizia del testo personalizzata in Power Query

Sommario

Creazione degli elenchi da una query vuota

Ora vediamo che il passaggio ToRemove crea un elenco. In realtà, è una combinazione di due liste.

Il primo elenco ha creato le virgolette e il secondo elenco è un intervallo di caratteri che volevo rimuovere.

Creazione di una funzione di pulizia del testo personalizzata in Power Query

Come ho creato questa lista?

Bene, ho usato una funzione chiamata Txt.ToList.

È possibile accedere alla documentazione interna della funzione creando una query vuota, immettendo il nome della funzione senza le parentesi e quindi premendo Invio.

Creazione di una funzione di pulizia del testo personalizzata in Power Query

Vediamo che Text.ToList restituisce un elenco di valori di carattere da un dato valore di testo.

Incolliamo alcuni testi e invochiamo questa funzione.

Creazione di una funzione di pulizia del testo personalizzata in Power Query

Crea una nuova query e puoi vedere che questo elenco contiene tutte le lettere che vediamo qui nel testo.

Creazione di una funzione di pulizia del testo personalizzata in Power Query

Ricorda che ho aggiunto un elenco aggiuntivo, giusto? Ho combinato due elenchi e ho usato la e commerciale per farlo.

Ricreiamolo adesso. Ho usato la e commerciale e l'inizializzatore di elenco, quindi ho inserito le virgolette.

Creazione di una funzione di pulizia del testo personalizzata in Power Query

Ora vediamo che le virgolette sono state aggiunte a questo elenco, ma perché ho creato un elenco?

Creazione di una funzione di pulizia del testo personalizzata in Power Query

Bene, nel passaggio successivo della mia funzione di pulizia del testo, ho usato una funzione M chiamata Testo. Rimuovere.

Creazione di una funzione di pulizia del testo personalizzata in Power Query

E vedi che puoi inserire un testo e poi un elenco di caratteri che vuoi rimuovere da quella stringa.

Creazione di una funzione di pulizia del testo personalizzata in Power Query

Torniamo alla nostra funzione di pulizia del testo.

Creazione di una funzione di pulizia del testo personalizzata in Power Query

A. Rimuovi ha creato questi due elenchi, quindi li ha combinati insieme in un unico elenco.

Creazione di una funzione di pulizia del testo personalizzata in Power Query

E poi incolliamo la variabile CleanText. La clausola 'in' chiama la funzione M Text.Remove e passa la variabile myText, quindi chiama l'elenco To.Remove. Vediamo cosa fa.

Creazione di una funzione di pulizia del testo personalizzata in Power Query

Torniamo alla nostra domanda. Questo non restituisce più un elenco, ma restituisce alcuni valori di testo.

Creazione di una funzione di pulizia del testo personalizzata in Power Query

Taglio in Power Query

Il passo successivo è il taglio . Come puoi vedere dall'immagine sopra, abbiamo alcuni spazi aggiuntivi e una virgola finale alla fine di cui vogliamo sbarazzarci. Per fare questo, possiamo usare le funzioni trim. Torniamo alla query per esaminare il codice M.

Nel codice M, ho annidato 2 funzioni trim. La prima funzione di stringa rimuove gli spazi aggiuntivi all'inizio e alla fine della nostra variabile CleanText.

Creazione di una funzione di pulizia del testo personalizzata in Power Query

Per i restanti testi che abbiamo, rimuoveremo anche gli spazi dalla stringa di risultato.

Rimuoveremo anche la virgola finale.

Creazione di una funzione di pulizia del testo personalizzata in Power Query

Vediamo il risultato. Copio il nome della variabile, lo incollo dopo la clausola "in" e faccio clic su Fine. Quando aggiorniamo la nostra query, puoi vedere che gli spazi aggiuntivi sono spariti e la virgola finale è stata rimossa.

Creazione di una funzione di pulizia del testo personalizzata in Power Query

Nei passaggi finali della mia query, ho appena sostituito alcuni valori di testo.

Creazione di una funzione di pulizia del testo personalizzata in Power Query

Nell'ultimo caso, ho sostituito la sottolineatura con uno spazio. Copiamolo e incolliamolo dopo la clausola 'in'. Ho anche abilitato di nuovo il tipo di ritorno.

Creazione di una funzione di pulizia del testo personalizzata in Power Query

Torniamo alla nostra query ed esaminiamo i risultati: finora tutto bene!

Creazione di una funzione di pulizia del testo personalizzata in Power Query

Ora, non vogliamo creare nuove colonne per richiamare la nostra funzione, giusto? Quello che possiamo fare è invece trasformare la nostra colonna 1 nella nostra colonna di unione.

Rimuoverò questo passaggio della colonna personalizzata.

Creazione di una funzione di pulizia del testo personalizzata in Power Query

Quindi userò l'interfaccia utente per creare la maggior parte del codice per noi. Nella scheda Trasforma, seleziona entrambe le colonne, vai a Formato e seleziona una funzione.

Creazione di una funzione di pulizia del testo personalizzata in Power Query

Non importa quale funzione sia selezionata perché questo è il codice M generato dall'interfaccia utente. Ora possiamo sostituire quel testo. Funzione inferiore...

Creazione di una funzione di pulizia del testo personalizzata in Power Query

… con la nostra funzione di testo pulito. Spero che tu stia capendo perché ho dovuto aggiungere fx davanti. Non c'è "in funzione" che inizia con quello.

Creazione di una funzione di pulizia del testo personalizzata in Power Query

Quando premiamo OK, puoi vedere che i nostri testi sono stati puliti. Questo e spettacolare.

Creazione di una funzione di pulizia del testo personalizzata in Power Query

Conclusione

Perché abbiamo dovuto affrontare tutti i problemi per creare una funzione di pulizia personalizzata? Bene, se è probabile che dovrai ripetere questo passaggio o utilizzare una logica simile in futuro, puoi memorizzare questa query di funzione.

In questo modo, accelererà lo sviluppo della query in una fase successiva. Un altro buon motivo è perché è anche divertente da fare.

Spero ti sia piaciuto questo tutorial. Se lo hai fatto, non dimenticare di iscriverti al canale LuckyTemplates .

Melissa


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.