Agregácie predstavujú spôsob zbalenia, sumarizácie alebo zoskupenia údajov. Keď začnete s nespracovanými údajmi z tabuliek alebo iných zdrojov údajov, údaje sú často ploché, čo znamená, že je tu veľa podrobností, ale neboli žiadnym spôsobom usporiadané ani zoskupené. Tento nedostatok súhrnov alebo štruktúry môže sťažiť zisťovanie vzorov v údajoch. Dôležitou súčasťou modelovania údajov je definovanie agregácií, ktoré zjednodušujú, abstraktujú alebo sumarizujú vzory v odpovedi na konkrétnu obchodnú otázku.
Najbežnejšie agregácie, napríklad tie, ktoré používajú funkcie AVERAGE, COUNT, DISTINCTCOUNT, MAX, MIN alebo SUM , je možné vytvoriť v mierke automaticky pomocou funkcie Automatický súčet. Iné typy agregácií, ako napríklad AVERAGEX, COUNTX, COUNTROWS alebo SUMX, vrátia tabuľku a vyžadujú vzorec vytvorený pomocou jazyka DAX (Data Analysis Expressions).
Vysvetlenie agregácií v Power Pivot
Výber Skupiny pre agregáciu
Keď agregujete údaje, zoskupíte údaje podľa atribútov, ako sú napríklad produkt, cena, oblasť alebo dátum, a potom definujete vzorec, ktorý funguje so všetkými údajmi v skupine. Ak napríklad vytvoríte súčet za rok, vytvárate agregáciu. Ak potom vytvoríte pomer v tomto roku oproti predchádzajúcemu roku a prezentujete ich ako percentá, ide o iný typ agregácie.
Rozhodnutie o spôsobe zoskupenia údajov je riadené obchodnou otázkou. Agregácie môžu napríklad odpovedať na tieto otázky:
Počíta Koľko transakcií tam bolo za mesiac?
Priemery Aký bol priemerný predaj za tento mesiac podľa predajcu?
Minimálne a maximálne hodnoty Ktoré predajné okresy boli prvých päť z hľadiska predaných jednotiek?
Ak chcete vytvoriť výpočet, ktorý odpovedá na tieto otázky, musíte mať podrobné údaje obsahujúce čísla, ktoré sa majú spočítať alebo sčítať, a tieto číselné údaje musia nejakým spôsobom súvisieť so skupinami, ktoré použijete na usporiadanie výsledkov.
Ak údaje ešte neobsahujú hodnoty, ktoré môžete použiť na zoskupenie, napríklad kategóriu produktov alebo názov geografickej oblasti, kde sa priestor nachádza, môžete do svojich údajov pridať skupiny pridaním kategórií. Pri vytváraní skupín v Exceli je potrebné manuálne zadať alebo vybrať skupiny, ktoré chcete použiť medzi stĺpcami v hárku. V relačnom systéme sú však hierarchie, ako napríklad kategórie produktov, často uložené v inej tabuľke ako tabuľka faktov alebo hodnôt. Tabuľka kategórií je zvyčajne prepojená s údajmi faktov podľa určitého typu kľúča. Predpokladajme napríklad, že zistíte, že vaše údaje obsahujú ID produktov, ale nie názvy produktov ani ich kategórie. Ak chcete pridať kategóriu do plochého excelového hárka, budete musieť skopírovať do stĺpca, ktorý obsahoval názvy kategórií. Pomocou Power Pivot môžete importovať tabuľku kategórií produktov do dátového modelu, vytvoriť vzťah medzi tabuľkou s číselnými údajmi a zoznamom kategórií produktov a potom použiť kategórie na zoskupenie údajov. Ďalšie informácie nájdete v téme Create vzťahu medzi tabuľkami.
Výber funkcie pre agregáciu
Po identifikovaní a pridaní zoskupení, ktoré chcete použiť, sa musíte rozhodnúť, ktoré matematické funkcie použiť na agregáciu. Slovo agregácia sa často používa ako synonymum matematických alebo štatistických operácií, ktoré sa používajú v agregáciách, ako sú napríklad súčty, priemery, minimum alebo počty. Power Pivot vám však umožňuje vytvárať vlastné vzorce na agregáciu, ako aj štandardné agregácie, ktoré sa nachádzajú v Power Pivot aj v Exceli.
Napríklad s ohľadom na rovnakú množinu hodnôt a zoskupení, ktoré boli použité v predchádzajúcich príkladoch, môžete vytvoriť vlastné agregácie, ktoré odpovedajú na nasledujúce otázky:
Filtrované počty Koľko transakcií tam bolo za mesiac, okrem okna údržby na konci mesiaca?
Pomery, ktoré používajú priemery v priebehu času Aký bol percentuálny rast alebo pokles predaja v porovnaní s rovnakým obdobím minulého roka?
Zoskupené minimálne a maximálne hodnoty Ktoré oblasti predaja sa umiestnili na prvom mieste pre každú kategóriu produktov alebo pre každú propagáciu predaja?
Pridávanie agregácií do vzorcov a kontingenčných tabuliek
Ak máte všeobecnú predstavu o tom, ako by mali byť údaje zoskupené tak, aby boli zmysluplné, a hodnoty, s ktorými chcete pracovať, môžete sa rozhodnúť, či chcete vytvoriť kontingenčnú tabuľku alebo vytvoriť výpočty v rámci tabuľky. Power Pivot rozširuje a zlepšuje natívnu schopnosť Excelu vytvárať agregácie, ako sú napríklad súčty, počty alebo priemery. Vlastné agregácie môžete vytvoriť v Power Pivot buď v rámci Power Pivot okna, alebo v oblasti kontingenčnej tabuľky programu Excel.
-
Vo vypočítanom stĺpci môžete vytvoriť agregácie, ktoré zohľadnia aktuálny kontext riadka na načítanie súvisiacich riadkov z inej tabuľky, a potom sčítať, spočítať alebo priemerovať tieto hodnoty v súvisiacich riadkoch.
-
V mierke môžete vytvoriť dynamické agregácie, ktoré používajú oba filtre definované vo vzorci, ako aj filtre uložené návrhom kontingenčnej tabuľky a výberom rýchlych filtrov, záhlaví stĺpcov a záhlaví riadkov. Mierky používajúce štandardné agregácie možno vytvoriť v Power Pivot pomocou funkcie Automatický súčet alebo vytvorením vzorca. Implicitné mierky môžete vytvoriť aj pomocou štandardných agregácií v kontingenčnej tabuľke v Exceli.
Pridanie zoskupení do kontingenčnej tabuľky
Pri navrhovaní kontingenčnej tabuľky presúvate polia, ktoré predstavujú zoskupenia, kategórie alebo hierarchie, do sekcie stĺpcov a riadkov kontingenčnej tabuľky a zoskupíte údaje. Potom presuňte polia, ktoré obsahujú číselné hodnoty, do oblasti hodnôt, aby ich bolo možné spočítať, vypočítať priemer alebo sčítať.
Ak do kontingenčnej tabuľky pridáte kategórie, ale údaje kategórií nesúvisia s údajmi faktov, môže sa zobraziť chyba alebo zvláštne výsledky. Zvyčajne sa Power Pivot pokúsi o odstránenie problému automatickým zisťovaním a navrhovaním vzťahov. Ďalšie informácie nájdete v téme Práca so vzťahmi v kontingenčných tabuľkách.
Polia môžete tiež presunúť do rýchlych filtrov a vybrať určité skupiny údajov na zobrazenie. Rýchle filtre umožňujú interaktívne zoskupovať, zoraďovať a filtrovať výsledky v kontingenčnej tabuľke.
Práca so zoskupovaním vo vzorci
Zoskupenia a kategórie môžete použiť aj na agregáciu údajov uložených v tabuľkách vytvorením vzťahov medzi tabuľkami a vytvorením vzorcov, ktoré tieto vzťahy využívajú na vyhľadávanie súvisiacich hodnôt.
Inými slovami, ak chcete vytvoriť vzorec, ktorý zoskupuje hodnoty podľa kategórie, najprv použite vzťah na prepojenie tabuľky obsahujúcej podrobné údaje a tabuliek obsahujúcich kategórie a potom vytvorte vzorec.
Ďalšie informácie o vytváraní vzorcov, ktoré používajú vyhľadávania, nájdete v téme Vyhľadávania vo vzorcoch doplnku Power Pivot.
Používanie filtrov v agregáciách
Novou funkciou v Power Pivot je možnosť použiť filtre na stĺpce a tabuľky údajov, a to nielen v používateľskom rozhraní a v kontingenčnej tabuľke alebo grafe, ale aj vo vzorcoch, ktoré používate na výpočet agregácií. Filtre možno použiť vo vzorcoch vo vypočítaných stĺpcoch aj vo vzorcoch.
V nových agregačných funkciách jazyka DAX môžete napríklad namiesto zadania hodnôt, pre ktoré sa má sčítať alebo spočítať, zadať ako argument celú tabuľku. Ak by ste v tejto tabuľke nepoužili žiadne filtre, agregačná funkcia by fungovala v porovnaní so všetkými hodnotami v zadanom stĺpci tabuľky. V jazyku DAX však môžete vytvoriť dynamický alebo statický filter v tabuľke tak, aby agregácia fungovala s inou podmnožinou údajov v závislosti od podmienky filtra a aktuálneho kontextu.
Kombináciou podmienok a filtrov vo vzorcoch môžete vytvoriť agregácie, ktoré sa menia v závislosti od hodnôt zadaných vo vzorcoch, alebo ktoré sa menia v závislosti od výberu záhlaví riadkov a záhlaví stĺpcov v kontingenčnej tabuľke.
Ďalšie informácie nájdete v téme Filtrovanie údajov vo vzorcoch.
Porovnanie agregačných funkcií Excelu a agregačných funkcií jazyka DAX
Nasledujúca tabuľka obsahuje zoznam niektorých štandardných agregačných funkcií poskytovaných Excelom a poskytuje prepojenia na implementáciu týchto funkcií v Power Pivot. Verzia DAX týchto funkcií sa správa úplne rovnako ako verzia Excelu s niekoľkými menšími rozdielmi v syntaxi a spracovaní určitých typov údajov.
Štandardné agregačné funkcie
Funkcia |
Použitie |
Vráti priemer (aritmetický priemer) všetkých čísel v stĺpci. |
|
Vráti priemer (aritmetický priemer) všetkých hodnôt v stĺpci. Spracuje text a nečíselné hodnoty. |
|
Spočíta počet číselných hodnôt v stĺpci. |
|
Spočíta počet hodnôt v stĺpci, ktoré nie sú prázdne. |
|
Vráti najväčšiu číselnú hodnotu v stĺpci. |
|
Vráti najväčšiu hodnotu z množiny výrazov vyhodnotených v tabuľke. |
|
Vráti najmenšiu číselnú hodnotu v stĺpci. |
|
Vráti najmenšiu hodnotu z množiny výrazov vyhodnotených v tabuľke. |
|
Sčíta všetky čísla v stĺpci. |
Agregačné funkcie jazyka DAX
Jazyk DAX obsahuje agregačné funkcie, ktoré umožňujú zadať tabuľku, pre ktorú sa má agregácia vykonať. Tieto funkcie preto namiesto pridávania alebo priemerovania hodnôt v stĺpci umožňujú vytvoriť výraz, ktorý dynamicky definuje údaje na agregáciu.
Nasledujúca tabuľka obsahuje funkcie agregácií, ktoré sú k dispozícii v jazyku DAX.
Funkcia |
Použitie |
Vypočíta priemer množiny výrazov vyhodnotených v tabuľke. |
|
Spočíta množinu výrazov vyhodnotených v tabuľke. |
|
Spočíta počet prázdnych hodnôt v stĺpci. |
|
Spočíta celkový počet riadkov v tabuľke. |
|
Spočíta počet riadkov vrátených z vnorenej funkcie tabuľky, ako je napríklad funkcia filtra. |
|
Vráti súčet množiny výrazov vyhodnotených v tabuľke. |
Rozdiely medzi agregačnými funkciami jazyka DAX a Excelu
Hoci majú tieto funkcie rovnaké názvy ako ich náprotivky v Exceli, používajú nástroj na analýzu v pamäti Power Pivot a boli prepísané na prácu s tabuľkami a stĺpcami. V excelovom zošite nie je možné použiť vzorec DAX a naopak. Možno ich použiť iba v okne Power Pivot a v kontingenčných tabuľkách založených na Power Pivot údajoch. Aj keď majú funkcie identické názvy, správanie sa môže mierne líšiť. Ďalšie informácie nájdete v témach s odkazmi na jednotlivé funkcie.
Spôsob vyhodnocovania stĺpcov v agregácii sa tiež líši od spôsobu, akým Excel spracováva agregácie. Príklad môže pomôcť ilustrovať.
Predpokladajme, že chcete získať súčet hodnôt v stĺpci Čiastka v tabuľke Predaj, takže vytvoríte nasledujúci vzorec:
=SUM('Sales'[Amount])
V najjednoduchšom prípade funkcia získa hodnoty z jedného nefiltrovaného stĺpca a výsledok je rovnaký ako v Exceli, ktorý vždy len sčíta hodnoty v stĺpci Amount. V Power Pivot sa však vzorec interpretuje ako "Get the value in Amount for each row of the Sales table, and then add up those individual values. Power Pivot vyhodnotí každý riadok, v ktorom sa agregácia vykoná, vypočíta jednu skalárnu hodnotu pre každý riadok a potom s týmito hodnotami vykoná agregáciu. Výsledok vzorca sa preto môže líšiť, ak boli v tabuľke použité filtre, alebo ak sa hodnoty vypočítavajú na základe iných agregácií, ktoré sa môžu filtrovať. Ďalšie informácie nájdete v téme Kontext vo vzorcoch DAX.
Funkcie časovej inteligencie jazyka DAX
Okrem agregačných funkcií tabuľky popísaných v predchádzajúcej časti má jazyk DAX aj agregačné funkcie, ktoré pracujú s dátumami a časmi, ktoré určíte, a poskytujú vstavanú časovú inteligenciu. Tieto funkcie používajú rozsahy dátumov na získanie súvisiacich hodnôt a agregáciu hodnôt. Môžete tiež porovnať hodnoty v rámci rozsahov dátumov.
Nasledujúca tabuľka obsahuje zoznam funkcií časovej inteligencie, ktoré možno použiť na agregáciu.
Funkcia |
Použitie |
Vypočíta hodnotu na konci kalendára daného obdobia. |
|
Vypočíta hodnotu na konci kalendára obdobia pred daným obdobím. |
|
Vypočíta hodnotu intervalu, ktorý začína prvým dňom obdobia a končí najneskoršieho dátumu v zadanom stĺpci dátumu. |
Ďalšie funkcie v časti Funkcie časovej inteligencie (funkcie časovej inteligencie) sú funkcie, ktoré možno použiť na načítanie dátumov alebo vlastných rozsahov dátumov, ktoré sa majú použiť v agregácii. Môžete napríklad použiť funkciu DATESINPERIOD na vrátenie rozsahu dátumov a použiť túto množinu dátumov ako argument do inej funkcie na výpočet vlastnej agregácie len pre tieto dátumy.