Očištění nahraných dat

Skoro pokaždé nedostáváte data v podobě, ve které by se dala rovnou používat. Většinou je potřeba provést očištění nahraných dat, zbavit se nepotřebných sloupců, řádků, eliminovat chybné hodnoty a připravit podklad, nad kterým půjde rychle a přehledně reportovat. Power BI proto obsahuje Editor Power Query.

Na čem si očištění vyzkoušíme?

V minulé kapitole Získání dat jsem poskytl zdrojový soubor z Českého Statistického Úřadu, se kterým budeme nyní pracovat. Soubor obsahuje data o volbách do Poslanecké sněmovny Parlamentu ČR z roku 2017.

náhled na neočištěná data v excelu

Jedná se o statický report, který obsahuje datové značky, které nám v aktuálním stavu brání rovnou data reportovat. Musíme je tedy očistit. Očištění bychom mohli provést přímo v Excelu, ale my ho provedeme v Power BI, abychom při dalších volbách nemuseli tento export zase ručně upravovat.

Zrychlené nahrání dat

Power BI záložka Domovská stránka, sekce Externí data, funkce Načíst data. Ze zobrazeného seznamu jsme zvolili Excel a v Průzkumníku souborů jsme nalezli a zvolili soubor „jaknapowerbi.xlsx“. Zobrazili se nám listy v Excelu. Označili jsme si list DATA a načetli je do Power Query pomocí tlačítka Transformovat data pod náhledem dat.

To je celé. Data jsou nahraná do Power Query, kde je můžeme očistit. Pojďme tedy na to!

Prostředí Power Query jsem vysvětloval v předchozím článku (Odkaz zde).

Očištění

Aktuálně nahraná data v Power Query vypadají dost chaoticky. Jak je tedy očistíme?

Power Query s Daty před očištěním
Odebrání nepotřebných sloupců

Osobně bych začal tím, že bych odebral nepotřebné sloupce. Které to jsou? Když si jednotlivé sloupce prohlédneme, tak zjistíme, že první a poslední sloupec neobsahuje žádné relevantní údaje. Jsou tu aktuálně dvě cesty, jak se těchto sloupců zbavit:

  1. Pomocí klávesy CTRL si tyto dva sloupce označíme a v Menu ze záložky Domovská stránka se sekce Správa sloupců zvolíme Odebrat sloupce.
  2. Pomocí klávesy SHIFT si označíme všechny ostatní sloupce a pomocí stejné cesty rozklikneme volbu pod Odebrat sloupce kde zvolíme Odebrat ostatní sloupce.
Správa sloupců - Odebrat sloupce
Výsledek odebrání sloupců

Obě tyto varianty povedou ke stejnému výsledku, ale každá si poznamenává jiné vstupní parametry. První varianta si uloží názvy sloupců, které chceme smazat a pokud by došlo k jejich přejmenování nebo odebrání ve zdrojových datech, tak nám Query dá při aktualizaci Error. Druhá varianta si uloží název sloupců, které chceme zachovat a opětovně, pokud by došlo k přepsání názvu sloupců nebo jejich odebrání, tak aktualizace skončí chybovou hláškou. Proto je dobré sloupce odebírat jen pokud víme, že se datová struktura nebude měnit.

Odebrání řádků

Když se podíváme na data, tak zjistíme, že na řádku číslo pět se teprve vyskytují naše statistická data. Respektive nadpis jejich sloupců. To nás vede k další funkci, která se jmenuje Odebrání řádků. Většinou se řádky neodebírají, pokud nemáte takto strukturovaný datový zdroj. Mohlo by totiž dojít ke ztrátě důležitých dat později, když by se měnila datová struktura. Což nám tu nehrozí, a proto tuto úpravu provést můžeme bez obav.

V Menu ze záložky Domovská stránka ze sekce Omezení počtu řádků zvolíme Odebrat řádky. Ze zobrazené nabídky zvolíme Odebrat horní řádky. Zobrazí se nám okno, které požaduje počet řádků, které chceme shora odebrat. Jedná se tedy o číslo řádku, kde se vyskytují naše data mínus 1. (X-1) V našem případě se tedy jedná o číslo 4.

Omezení počtu řádků - Odebrat řádky
Výsledek odebírání řádků

Přišli jsme o první 4 řádky a už naše data začínají vypadat víc použitelně. Stejný postup aplikujeme ještě jednou, ale tentokrát odstraníme dolních pět řádků.

Použít první řádek jako záhlaví

Máte tedy v prvním řádků názvy našich sloupců. Jak je dostaneme do záhlaví? Přejmenovat jeden sloupec po druhém a pak odebrat první řádek by samozřejmě šlo, ale rozhodně to není optimální řešení. Power Query na to má totiž vlastní funkci, která se jmenuje Použít první řádek jako záhlaví. Nalezneme ji v Menu na záložce Domovská stránka v sekci Transformace a kliknutím použijeme.

Transformace - Použít první řádek jako záhlaví
Opakování

Když se na data podíváte v tuto chvíli, můžou se již zdát pěkně připravená, ale máme tu jeden zbytečný sloupec a jeden řádek. Sloupec se jmenuje Česká republika. Jde o agregovaná data za jednotlivé kraje. Zbytečný řádek v tuto chvíli je řádek první, který v prvním sloupci obsahuje „Volební strany celkem“. Sloupec odebere libovolným způsobem z předešlých a řádek pomocí filtrování. Že jsme si filtrování ještě neukazovali? Stačí u názvu příslušného sloupce kliknout na šipku dolů, která zobrazí možnosti „Seřadit“, “Odebrat prázdné“, „Filtry textu“ a náhledové okno nad daty z tohoto sloupce. Pomocí tohoto okna odfiltrujeme špatný řádek pryč z Query a Power BI.

Power Query - Opakování - Očištění dat
Převést sloupce na řádky

V aktuálním stavu je tabulka s výsledky již hezky přehledná, ale pro reporting ještě není úplně připravená. Co tím myslím? No, abychom mohli zobrazit výsledky ve všech krajích současně, tak potřebujeme dostat všechny výsledky za kraje do jednoho sloupce. Počkat…cože? Stav, které ho chceme teď dosáhnout jsou jen tři sloupce. První s názvy stran. Druhý s názvy krajů. Třetí s výslednými hodnotami za jednotlivou stranu v jednotlivém kraji. Docílíme toho funkcí, které se jmenuje Převést sloupce na řádky. K nalezení je v Menu na záložce Transformace v sekci Libovolný sloupec.

Libovolný sloupec - Převést sloupce na řádky

Než ji ale použijeme, označíme si první sloupec s názvy stran a neklikneme přímo na funkci, ale na šipku u funkce. Ze zobrazené nabídky zvolíme variantu Převést další sloupce na řádky. Pokud se vše povedlo, tak náhled na data vypadá takto.

Očištění dat- náhled na data
Rozdělit sloupec

Data jsou takto hezky přehledná a seřazená. Co mě ale trápí, jsou číselná označení stran, které jsou v prvním sloupci. Mohli bychom jim vytvořit separátní sloupec a z aktuálního je odstranit. Nejjednodušší metodou je v tuto chvíli funkce Rozdělit sloupec. Ta se nachází v Menu na záložce Domovská stránka v sekci Transformace. Funkci můžete znát z Excelu, kde se jmenuje Text do sloupců. Když na tuto funkci klikneme, zobrazíme výběrovou nabídku, kde zvolíme Oddělovačem.

Rozdělit sloupec

Zobrazí se okno, kde si můžeme vybrat z předem definovaných oddělovačů nebo použít náš vlastní. Dále si můžeme zvolit, zda má Power Query oddělit sloupce na základě prvního, posledního nebo všech výskytů. Pokud byste si zobrazili rozšířenou nabídku pomocí Upřesnit možnosti, pak můžete nastavit, zda se budou tvořit další sloupce nebo řádky, pro kolik výskytů v jednom řádku se má funkce použít a znak uvozovek.

Rozdělit sloupec oddělovačem
Změna datového typu

Jak se dá změnit datový typ jsem vysvětloval v článku o Editoru Power Query. Přenastavte si prosím sloupec „Hodnota“ z typu General na Desetinné číslo.

Nahradit chyby

Po změně datového typu se nám ve sloupci „Hodnota“ začaly objevovat hodnoty typu Error. Těch se musíme zbavit, jinak bychom tento sloupec nemohli pro reporting použít. Errory se dají nahradit jinými hodnotami. Pro nás tu Error znamená, že strana v kraji nezískala žádný podíl hlasů, tudíž hodnotu 0. Pravým kliknutím na název „Hodnota“ a výběrem Nahradit chyby zobrazíte okno, kam můžete zadat, na jakou hodnotu se Errory změní.

Přejmenování sloupců

Poslední dnešní úprava se bude jmenovat Přejmenování sloupců. Pokud jste kroky dělali stejně jako já, tak by se vaše sloupce měli jmenovat „.1“, „.2“,“Atribut“,“Hodnota“.

Data před přejmenováním sloupců

Změnit tato jména lze rychlým dvojklikem levým tlačítkem myši na aktuální název nebo v Menu na záložce Transformace v sekci Libovolný sloupec tlačítkem Přejmenovat, anebo pravým kliknutím myši na nadpis sloupce a výběrem z nabídky Přejmenovat. Já jsem přejmenoval sloupce na „ID“, „Nazev“, „Kraj“, „Hlasy“.

Závěr

Máme připravená data pro přehledný reporting. Co s těmito daty uděláme dál? Na to se podíváme v příštím článku, který se bude zaobírat propojením dat v Power BI a prvním reportingem.

Očištění nahraných dat

Related Posts

Leave a comment

Privacy Preferences
When you visit our website, it may store information through your browser from specific services, usually in form of cookies. Here you can change your privacy preferences. Please note that blocking some types of cookies may impact your experience on our website and the services we offer.