Seskupení dat do kategorií

Jistě znáte ten pocit, když máte například data o svých zaměstnancích a chcete z nich dělat výstupy. Zaměstnanců máte například 50 a ukazovat metriky po jednotlivých zaměstnancích sice přichází v úvahu, ale co s těmito výstupy dělat, pokud byste je chtěli seskládat podle nějakých kategorií (seskupení dat), které se v datech přímo nenacházejí.

Celkový objem prodejů zaměstnanců podle věkových kategorií

Kategorií se dá chápat sama o sobě i hodnota věku. Těch je ale velké množství. Takový detail nám může posloužit jako další rozpad kategorií, které splňují rozložení věku například (18;23), <23;31), <31;39), <39;46) a 46+. Možností, jak tyto kategorie vytvořit, je více. Můžete si vytvořit vlastní sloupec buďto pomocí jazyka DAX nebo v Power Query, anebo použít funkci skupiny dat. Tyto možnosti nám na základě připravených kritérií umožní vytvořit kategorie.

DAX zápis pro tvorbu sloupce

Jazyk DAX poskytuje možnost použít funkci IF() nebo funkci SWITCH(), obě tyto funkce ve výsledku pracují s tím, že porovnávají hodnotu s podmínkami na základě výsledku TRUE, FALSE vracejí výsledek.

IF varianta

Sloupec_Kategorie =
VAR _vek = Tabulka[Vek]
RETURN
    IF (
        _vek >= 46,
        “46+”,
        IF (
            _vek >= 39,
            “39-46”,
            IF (
                _vek >= 31,
                “31-39”,
                IF ( _vek >= 23“23-31”IF ( _vek >= 18“18-23”BLANK () ) )
            )
        )
    )

V této variantě si můžete všimnout, že je nezbytné opakovaně zapisovat funkci IF(), abychom dosáhli požadovaného seskupení dat. Zároveň tato varianta vyžaduje, abychom ručně nebo prostřednictvím nějaké funkce zadávali podmínky a výsledné kategorické názvy.

 

SWITCH varianta

Sloupec_Kategorie =
VAR _vek = Tabulka[Vek]
RETURN
    SWITCH (
        TRUE (),
        _vek >= 46“46+”,
        _vek >= 39“39-46”,
        _vek >= 31“31-39”,
        _vek >= 23“23-31”,
        _vek >= 18“18-23”,
        BLANK ()
    )

 

Varianta Switch() je pro zápis o něco úspornější než varianta IF(), protože nemusíme dokola vypisovat tutéž funkci. Stejně jako v předchozí variantě musíme ručně nebo pomocí jiné funkce doplňovat intervaly a názvy pro kategorie seskupení dat.

 

Power Query zápis

= Table.AddColumn(#"Changed Type","Věkové kategorie", each if [Age] >= 46 then "46+" else if [Age] >= 39 then "39-46" else if [Age] >= 31 then "31-39" else if [Age] >= 23 then "23-31" else if [Age] >= 18 then "18-23" else null)

Tento zápis můžete provést přímo pomocí vlastního sloupce (Custom Column) nebo pomocí podmíněného sloupce (Conditional Column)

Podmíněný sloupec

Stejně tak, jako v předchozích variantách v jazyce DAX je nezbytné používat funkci IF() vícekrát a kategorické názvy pro seskupení dat doplnit ručně nebo pomocí Parametrů.

 

Skupiny dat

Při označení sloupce, ve kterém chcete vyrobit kategorie, se v záhlaví zobrazí záložka Nástroje sloupce (Column tools). Na této kartě se nachází funkce Skupiny dat (Data groups).

Skupiny dat

Tato funkce poskytuje dvě možnosti, podle kterých dojde k vytvoření skupin dat:

  • Seznam
  • Přihrádka

Pokud vytvoříte seskupení dat do kategorií pomocí této funkce, tak výsledek bude taktéž nový sloupec, který budeme moci v grafu používat. Takto vytvořený sloupec má i svou speciální ikonku, aby byl ihned rozpoznatelný

ikona skupinové funkce v Power BI
Seznam

Seznamové seskupení dat umožňuje si napřímo vytvořit jednotlivé skupiny, do který vložíte hodnoty. Jakákoliv hodnota, která nebude uložena do skupin, se uloží do kategorie „Další

Varianta seznamu

Pokud bychom aplikovali nastavení tak, jak ho vidíte na obrázků výše, tak by ukázka výsledku vypadala takto:

Distribuované skupiny dle nastavení seznamu
Přihrádka

Na rozdíl od seznamu přihrádka pro seskupení dat umožňuje říct konkrétní věkové kategorie. Umožňuje také ale říct, zda intervaly, které bude vytvářet, chci vytvořit podle velikosti neboli po kolika letech se vytvoří nová kategorie, nebo zda chci vždy rozdělit výsledek do přesného počtu kategorií. Při druhé variantě se přihrádka sama postará o výpočet velikostí jednotlivých kategorií a výsledné seskupení dat.

Nastavení přihrádek

Po vytvoření takovéto přihrádky a jejím umístění do grafu získáme následující výsledky:

Výsledně připravená data v dynamických kategoriích

Nyní mi Power BI samo vytváří věkové kategorie rozdělené po sedmi letech a nemusíme je sami dopisovat nebo v nějakém případě upravovat.

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.