Niekedy si potrebujete spraviť vlastnú kategorizáciu údajov. Napr. aby ste z väčšieho množstva hodnôt v stĺpcoch spravili menšie množstvo hodnôt, s ktorými sa už pracuje v reporte lepšie. Najuniverzálnejší prístup je spraviť to cez jazyk DAX. V jednoduchých prípadoch vám však postačí aj zabudovaná funkcionalita skupín hodnôt pre stĺpce dátového modelu v Power BI, nazývaná jednoducho “skupiny”.
Power BI Desktop má v sebe jednu často prehliadanú funkcionalitu, nazývanú skupiny. Samo o sebe to nie je zrovna vhodný názov, ale budiž. Jej výhodou je to, že keď potrebujete vlastnú kategorizáciu údajov, tak nemusíte vytvárať nový stĺpec cez jazyk DAX či Power Query, ale použijete klikátko v pravom paneli s ponukou polí dátového modelu. Nevýhodou je veľmi jednoduchá funkcionalita, nevhodná pri väčšom množstve hodnôt v kategorizovaných stĺpcoch.
Začneme, ako inak, opäť s našim vzorovým súborom Power BI. V reporte si vyskladáme takúto kontingenčku:
- na riadky dáme z tabuľky Regióny stĺpec Krajina,
- do oblasti hodnôt dáme z tabuľky Objednávky merítko Obrat.
Výsledkom bude klasické zobrazenie obratu po krajinách:
A teraz by sme chceli trochu iný prehľad – zobraziť to kompaktnejšie. Konkrétne, obrat za európske krajiny zobraziť na jednom riadku, a obrat za ostatné krajiny na druhom riadku. A na to nám bude stačiť funkcionalita skupín.
Choďte do pravého panela, a tam si nájdite onen stĺpec Krajina v tabuľke Regióny. Kliknite naň pravým tlačítkom myši, a v menu vyberte položku “Nová skupina”:
Otvorí sa takéto okno, kde si nastavíte tú kategorizáciu údajov:
V políčku “Názov” úplne navrchu okna si nastavíte pomenovanie skupiny. Tak sa bude volať nové pole v ponuke dátového modelu, keď toto dokončíme. My ho pomenujeme povedzme “Skupina krajín”:
Potom vyberieme v zozname naľavo zoznam hodnôt, ktoré chceme zoskupiť, či už podržaním klávesu Ctrl (selektívny výber hodnôt) a kliknutím na každú položku, alebo pomocou klávesu Shift (súvislý vyber hodnôt). Po výbere položiek “France”, “Germany” a “United Kingdom”, kliknite na tlačítko Skupina vľavo dole:
…a vytvorí sa nová skupina hodnôt v paneli napravo:
Tú skupinu hodnôt premenujeme na “Európske krajiny”, priamym prepísaním jej názvu hneď po vytvorení, alebo dvojklikom na jej názov:
Rovnakým spôsobom potom označíme krajiny “Australia”, “Canada” a “United States”, a vytvoríme z nich skupinu s názvom “Ostatné krajiny”:
Poslednú hodnotu “NA” z výberu nepoužijeme. Pri vytváraní skupín totižto nemusíte použiť všetky hodnoty, a stačí použiť iba tie, čo chcete. Ak by ste chceli zoskupiť všetky ostatné nevybrané hodnoty do skupiny “Iné”, tak zakliknite políčko “Zahrnúť skupinu Iné” v pravom dolnom rohu okna:
Názov tej skupiny si samozrejme môžete zmeniť na svoj názov.
Potom stlačte tlačítko OK, a vytvorí sa nová skupina hodnôt v ponuke dátového modelu. Nájdete ju v rovnakej tabuľke, ako ten stĺpec, nad ktorým ste vytvorili túto skupinu:
Nakoniec už stačí iba použiť toto pole v kontingenčke, namiesto poľa Krajina, a výsledok bude vyzerať takto:
A jednoduché zoskupenie je hotové 🙂 Ak by ste potrebovali neskôr toto nastavenie zmeniť, tak v paneli napravo kliknite pravým tlačítkom na názov danej skupiny, a potom v menu na položku “Upraviť skupiny”.
Táto funkcionalita má však ešte ďalšie skryté možnosti. Tie sa prejavia vtedy, keď je dané pole číselného typu. Krajina bola textového typu, a jediná možnosť bola vybrať zoskupené hodnoty. Keď však skúsite vytvoriť skupinu nad číselným stĺpcom – napr. nad stĺpcom “Cena objednávky” v tabuľke “Objednávky” – tak sa zobrazia ešte ďalšie možnosti. V okne s vytváraním skupiny sa objaví ešte ďalšia voľba, v políčku “Typ skupiny”, s názvom “Priehradka”:
Po jej vybratí sa zobrazia ďalšie 2 možnosti pod ňou, v novom políčku “Typ intervalu”:
Z nich si môžete vybrať tieto nastavenia:
- Veľkosť intervalov – vytvorí intervaly s rovnakou veľkosťou, pričom veľkosť intervalu sa nastavuje v nastavení “Veľkosť priehradky” nižšie,
- Počet intervalov – rozdelí celý rozsah hodnôt v stĺpci na stanovený počet intervalov s rovnakou veľkosťou. Veľkosť intervalu sa odvodí od rozsahu hodnôt v stĺpci a počtu požadovaných intervalov. Počet sa nastaví v políčku “Počet intervalov”, ktoré sa zobrazí po vybraní tejto voľby.
Táto funkcionalita funguje aj nad dátumovými a časovými stĺpcami. Jediný rozdiel je v spôsobe zadávania dĺžky intervalu, kde sa zadáva časový rozsah:
V oboch prípadoch to ale nie je vôbec prispôsobiteľné, a názov skupín bude v prípade číselného stĺpca vždy číselná hodnota, ktorou začína interval:
…a v prípade dátumových stĺpcov pri výbere intervalu “1 mesiac” to bude vyzerať takto:
Každopádne lepšie ako klincom do oka. A ak sa vám nechce písať vzorce v jazyku DAX, či klikať niekoľko minút v Power Query len kvôli takémuto jednoduchému zoskupeniu, tak táto funkcionalita príde celkom vhod. Ja sám ju používam síce iba občas, ale to je skôr už profesionálna deformácia ako pravidlo 🙂
Takže takto jednoducho si viete zoskupiť hodnoty v stĺpcoch v dátovom modeli, aby sa vám lepšie s nimi pracovalo, či aby sa pomocou nich lepšie kreslili grafy. Ak by vám to nestačilo, tak si prečítajte článok o tom, ako to spraviť cez vlastné podmienky, či ako to spraviť dynamicky pomocou externého číselníka. Pomocou toho už potom zakategorizujete naozaj všetko 🙂
Autor, tréner a expert na Power BI, PowerPivot a jazyk DAX. Založil som tento web, aby som pomohol dostať Power BI do širšieho povedomia, a aby som ľuďom ukázal, že moderný a komplexný reporting ide vyriešiť rýchlo a jednoducho. Po nociach vzývam Majstra Yodu a tajne plánujem ovládnutie vesmíru.