Vytvoření vlastní funkce čištění textu v Power Query

V tomto příspěvku na blogu se blíže podíváme na vlastní funkci pro čištění textu, kterou jsem vytvořil pro naši probíhající sérii v LuckyTemplates TV s názvem . Celé video tohoto tutoriálu si můžete prohlédnout ve spodní části tohoto blogu.

Pro týden #2 máme nějaká chaotická data, která potřebují vyčistit. Naším cílem je vyčistit všechny textové hodnoty v obou sloupcích.

Pro tento úkol jsem vytvořil funkci čistého textu.

Vytvoření vlastní funkce čištění textu v Power Query

Nejprve se ale pojďme rychle podívat na M kód.

Vytvoření vlastní funkce čištění textu v Power Query

Tato funkce trvá jednus názvem myText. Jeho hodnota by měla být typu text a funkce by měla vracet textovou hodnotu, protože ne všechny níže uvedené proměnné vrátí textovou hodnotu.

Vytvoření vlastní funkce čištění textu v Power Query

Deklarování návratového typu povede k chybě. Aby se tato chyba nestala, mohu to zatím okomentovat.

Vytvoření vlastní funkce čištění textu v Power Query

Pokud chceme vidět, co vrací první proměnná, stačí na ni odkazovat jménem za klauzulí in. Takže zkopíruji proměnnou ToRemove, vložím ji na spodní řádek a stisknu OK.

Vytvoření vlastní funkce čištění textu v Power Query

Abychom viděli výsledek této funkce, musíme ji vyvolat. Pojďme tedy k tomuto dotazu přidat vlastní sloupec.

Vytvoření vlastní funkce čištění textu v Power Query

Poté vyvolejte naši funkci, vyberte tento sloučený sloupec a stiskněte OK.

Vytvoření vlastní funkce čištění textu v Power Query

Obsah

Vytváření seznamů z prázdného dotazu

Nyní vidíme, že krok ToRemove vytvoří seznam. Ve skutečnosti jde o kombinaci dvou seznamů.

První seznam vytvořil uvozovky a druhý seznam je rozsah znaků, které jsem chtěl odstranit.

Vytvoření vlastní funkce čištění textu v Power Query

Jak jsem vytvořil tento seznam?

No, použil jsem funkci s názvem Txt.ToList.

K interní dokumentaci funkcí se dostanete vytvořením prázdného dotazu, zadáním názvu funkce bez závorek a stisknutím klávesy Enter.

Vytvoření vlastní funkce čištění textu v Power Query

Vidíme, že Text.ToList vrací seznam hodnot znaků z dané textové hodnoty.

Vložíme nějaké texty a vyvoláme tuto funkci.

Vytvoření vlastní funkce čištění textu v Power Query

Vytvoří nový dotaz a vidíte, že tento seznam obsahuje všechna písmena, která zde v textu vidíme.

Vytvoření vlastní funkce čištění textu v Power Query

Pamatujete si, že jsem přidal další seznam, že? Zkombinoval jsem dva seznamy a použil jsem k tomu ampersand.

Pojďme to teď znovu vytvořit. Použil jsem ampersand a inicializátor seznamu, pak jsem zadal tyto uvozovky.

Vytvoření vlastní funkce čištění textu v Power Query

Nyní vidíme, že uvozovky byly přidány do tohoto seznamu, ale proč jsem vytvořil seznam?

Vytvoření vlastní funkce čištění textu v Power Query

No a v dalším kroku mé funkce čištění textu jsem použil M funkci nazvanou Text. Odstranit.

Vytvoření vlastní funkce čištění textu v Power Query

A vidíte, že můžete zadat text a poté seznam znaků, které chcete z tohoto řetězce odstranit.

Vytvoření vlastní funkce čištění textu v Power Query

Vraťme se k naší funkci čištění textu.

Vytvoření vlastní funkce čištění textu v Power Query

Na. Nástroj Remove vytvořil tyto dva seznamy a poté je spojil do jednoho seznamu.

Vytvoření vlastní funkce čištění textu v Power Query

A pak vložíme proměnnou CleanText. Klauzule 'in' volá funkci M Text.Remove a předává proměnnou myText a poté volá seznam To.Remove. Podívejme se, co to udělá.

Vytvoření vlastní funkce čištění textu v Power Query

Vraťme se k našemu dotazu. To již nevrací seznam, ale vrací některé textové hodnoty.

Vytvoření vlastní funkce čištění textu v Power Query

Ořezávání v Power Query

Dalším krokem je ořezávání . Jak můžete vidět z obrázku výše, máme nějaké další mezery a koncovou čárku na konci, kterých se chceme zbavit. K tomu můžeme použít trimovací funkce. Vraťme se k dotazu, abychom prozkoumali M kód.

Do M kódu jsem vnořil 2 trimovací funkce. První funkce řetězce odstraní další mezery na začátku a na konci naší proměnné CleanText.

Vytvoření vlastní funkce čištění textu v Power Query

U zbývajících textů, které máme, také odstraníme mezery z výsledného řetězce.

Chystáme se také odstranit koncovou čárku.

Vytvoření vlastní funkce čištění textu v Power Query

Podívejme se na výsledek. Zkopíruji název proměnné, vložím jej za klauzuli „in“ a kliknu na Hotovo. Když aktualizujeme náš dotaz, můžete vidět, že další mezery zmizely a koncová čárka byla odstraněna.

Vytvoření vlastní funkce čištění textu v Power Query

V posledních krocích mého dotazu jsem právě nahradil některé textové hodnoty.

Vytvoření vlastní funkce čištění textu v Power Query

V posledním případě jsem podtržítko nahradil mezerou. Zkopírujeme to a vložíme za klauzuli 'in'. Znovu jsem také povolil návratový typ.

Vytvoření vlastní funkce čištění textu v Power Query

Vraťme se k našemu dotazu a prozkoumáme výsledky – zatím je to dobré!

Vytvoření vlastní funkce čištění textu v Power Query

Nyní nechceme vytvářet nové sloupce pro vyvolání naší funkce, že? Co můžeme udělat, je transformovat náš sloupec 1 do našeho slučovacího sloupce.

Tento krok vlastního sloupce odstraním.

Vytvoření vlastní funkce čištění textu v Power Query

Pak použiji uživatelské rozhraní k vytvoření většiny kódu pro nás. Na kartě transformace vyberte oba sloupce, přejděte na Formát a vyberte funkci.

Vytvoření vlastní funkce čištění textu v Power Query

Opravdu nezáleží na tom, která funkce je vybrána, protože toto je M kód, který je generován uživatelským rozhraním. Nyní můžeme tento text nahradit. Spodní funkce…

Vytvoření vlastní funkce čištění textu v Power Query

… s naší funkcí čistého textu. Doufejme, že chápete, proč jsem musel přidat fx dopředu. Neexistuje žádná „funkce“, která tím začíná.

Vytvoření vlastní funkce čištění textu v Power Query

Když stiskneme OK, můžete vidět, že naše texty byly vyčištěny. To je úžasné.

Vytvoření vlastní funkce čištění textu v Power Query

Závěr

Proč jsme museli projít všemi problémy při vytváření vlastní čisticí funkce? No, pokud je pravděpodobné, že budete muset tento krok opakovat nebo použít podobnou logiku v budoucnu, můžete tento funkční dotaz uložit.

Tím urychlíte vývoj dotazu v pozdější fázi. Dalším dobrým důvodem je, že je to také zábava.

Doufám, že se vám tento návod líbil. Pokud ano, nezapomeňte se přihlásit k odběru kanálu LuckyTemplates .

Melissa


Vytvoření tabulky data v LuckyTemplates

Vytvoření tabulky data v LuckyTemplates

Zjistěte, proč je důležité mít vyhrazenou tabulku s daty v LuckyTemplates, a naučte se nejrychlejší a nejefektivnější způsob, jak toho dosáhnout.

LuckyTemplates Mobile Reporting Tipy a techniky

LuckyTemplates Mobile Reporting Tipy a techniky

Tento stručný návod zdůrazňuje funkci mobilního hlášení LuckyTemplates. Ukážu vám, jak můžete efektivně vytvářet přehledy pro mobily.

Profesionální servisní analytické zprávy v LuckyTemplates

Profesionální servisní analytické zprávy v LuckyTemplates

V této ukázce LuckyTemplates si projdeme sestavy ukazující profesionální analýzy služeb od firmy, která má více smluv a zákaznických vztahů.

Aktualizácie Microsoft Power Platform | Microsoft Ignite 2021

Aktualizácie Microsoft Power Platform | Microsoft Ignite 2021

Pozrite si kľúčové aktualizácie pre Power Apps a Power Automate a ich výhody a dôsledky pre platformu Microsoft Power Platform.

Bežné funkcie SQL: Prehľad

Bežné funkcie SQL: Prehľad

Objavte niektoré bežné funkcie SQL, ktoré môžeme použiť, ako napríklad reťazec, dátum a niektoré pokročilé funkcie na spracovanie alebo manipuláciu s údajmi.

Vytvoření šablony LuckyTemplates: Průvodce a tipy

Vytvoření šablony LuckyTemplates: Průvodce a tipy

V tomto tutoriálu se naučíte, jak vytvořit dokonalou šablonu LuckyTemplates, která je nakonfigurována podle vašich potřeb a preferencí.

Parametry pole a malé násobky v LuckyTemplates

Parametry pole a malé násobky v LuckyTemplates

V tomto blogu si ukážeme, jak vrstvit parametry pole s malými násobky, abychom vytvořili neuvěřitelně užitečné přehledy a vizuály.

LuckyTemplates Rank a vlastní seskupení

LuckyTemplates Rank a vlastní seskupení

V tomto blogu se dozvíte, jak používat funkce hodnocení LuckyTemplates a vlastní seskupování k segmentaci ukázkových dat a jejich seřazení podle kritérií.

Zobrazení kumulativního součtu pouze do určitého data v LuckyTemplates

Zobrazení kumulativního součtu pouze do určitého data v LuckyTemplates

V tomto tutoriálu se budu zabývat konkrétní technikou, jak zobrazit kumulativní součet pouze do určitého data ve vašich vizuálech v LuckyTemplates.

Bullet Charts: Pokročilé vlastní vizuální prvky pro LuckyTemplates

Bullet Charts: Pokročilé vlastní vizuální prvky pro LuckyTemplates

Naučte se vytvářet a přizpůsobovat Bullet grafy v LuckyTemplates, které se používají hlavně pro měření výkonu oproti cílovým nebo předchozím rokům.