Mire jó a CALCULATE függvény Power BI-ban
A CALCULATE függvény a DAX egyik legerőteljesebb eszköze. Ez az a függvény, amely lehetővé teszi, hogy egy számítást új kontextusban végezz el, például ha szűrőket alkalmazol az adatokra, mint a SZUMHA, ÁTLAGHA, DARABHA, DARABTELI függvények az Excelben.
Lent példákat is hozok.
CALCULATE szintaxisa
CALCULATE(kifejezés, [szűrő1], [szűrő2], ...)
- kifejezés: Az az aggregált vagy más típusú számítás, amelyet el akarsz végezni (pl. SUM, AVERAGE stb.). Hogyha mondjuk egy SUMIF/SZUMHA függvényt szeretnél megcsinálni Power BI-ban, akkor a kifejezéshez a SUM függvényt használod (lent mutatok példát)
- szűrők: Egy vagy több feltétel, amelyek meghatározzák, hogyan módosuljon a számítás kontextusa. Ezek lehetnek logikai feltételek, táblaszűrők vagy FILTER függvények.
Nem csak a SZUMHA függvényre jó a CALCULATE!
Nézzünk néhány példát, amire a CALCULATE függvényt tudod használni. Ezekről a Power BI tanfolyamon részletesen tanulhatsz.
- Szűrők alkalmazása számításokra (olyan, mint a SZUMHA/ÁTLAGHA/DARABHA függvény Excelben)
Lehetővé teszi, hogy szűrőket adj hozzá egy számításhoz. Például számítsd ki az eladásokat csak bizonyos termékekre vagy dátumtartományra. - Eredeti szűrési környezet felülírása
Felülírhatja a meglévő szűrési kontextust a vizualizációban. Például a diagramod egy adott évet mutat, de a CALCULATE-el bármely más évre számíthatod az értékeket. - Kombinálható más függvényekkel
Kombinálható például a FILTER, SUM, AVERAGE, COUNT függvényekkel, hogy összetettebb számításokat végezhess.
Egyszerű példák
1. SZUMHA/ÁTLAGHA/DARABHA függvények Power BI-ban
Van egy Sales tábla, ahol a következő oszlopok vannak: Product, Quantity, Price. Szeretnéd kiszámolni a teljes eladott mennyiséget (Quantity) csak azoknál a soroknál, ahol az ár (Price) nagyobb, mint 50. Ez olyan, mintha Excelben egy SZUMHA függvényt csinálnál. Power BI-ban ezt a CALCULATE függvény segítségével tudod megcsinálni így:
CALCULATE(
SUM(Sales[Quantity]),
Sales[Price] > 50
)
- A SUM(Sales[Quantity]) összegzi a mennyiségeket.
- A Sales[Price] > 50 szűrő biztosítja, hogy csak az ár > 50 sorokat vegye figyelembe.
Ilyen függvényekkel részletesen foglalkozunk a Power BI tanfolyamon. Hogyha szeretnél átfogó Power BI tudást szerezni rövid idő alatt, akkor nézd meg, miket tanulunk a Power BI tanfolyamon: https://datakepzes.hu/power-bi-tanfolyam-kezdo-halado-online/
Van egyébként más módja is a SZUMHA függvény megírásának. Ez kicsit bonyolultabb, de ha érdekel, akkor megmutatom a RELATEDTABLE függvényt is.
2. Szűrés dátumtartomány szerint
Szeretnéd kiszámolni a 2024-es összes eladást. Feltételezzük, hogy van egy Date oszlop a Sales táblában:
CALCULATE(
SUM(Sales[Quantity]),
YEAR(Sales[Date]) = 2024
)
Ez a képlet kiszámolja a mennyiségek összegét, de csak a 2024-es sorok alapján.
A DATEADD függvény segítségével ennél sokkal komplexebb elemzéseket is tudsz csinálni, pl. előző évhez/hónaphoz/naphoz képesti változás. Ezt részletesen a Power BI tanfolyamon tanuljuk.
3. Kombináció FILTER-rel
A FILTER függvény segítségével összetettebb feltételeket is alkalmazhatsz.
(Amúgy ehhez nem feltétlenül kell FILTER függvény. A Power BI tanfolyamon megérted, hogy miért, nade a példa kedvéért nézzük tovább, mert van, amikor FILTER nélkül nem megy)
Például kiszámíthatod az eladásokat csak azoknál a termékeknél, ahol a mennyiség (Quantity) 10 felett van, és az ár (Price) kisebb, mint 100:
CALCULATE(
SUM(Sales[Quantity]),
FILTER(Sales, Sales[Quantity] > 10 && Sales[Price] < 100)
)
Különlegességek és trükkök
- ALAPÉRTELMEZETT KONTEXTUS FELÜLÍRÁSA
A CALCULATE felülírja a Power BI vizualizációban érvényes szűrőket, például diagramokban vagy táblázatokban lévő szűrőket. Példa: Ha egy diagramon egy adott ország szűrője van, de te szeretnéd az összes ország értékét figyelembe venni, használhatod a CALCULATE-et ALL függvénnyel:
CALCULATE( SUM(Sales[Quantity]), ALL(Sales[Country]) )
- TÖBB SZŰRŐ EGYÜTTES HASZNÁLATA
A szűrők egyszerre több feltételt is kezelnek. Például:
CALCULATE( SUM(Sales[Quantity]), Sales[Region] = "East", Sales[Price] > 50 )
Szóval igazából a CALCULATE függvény kicsit olyan, mint Excelben a:
- SZUMHA (SUMIF)
- SZUMHATÖBB (SUMIFS)
- ÁTLAGHA (AVERAGEIF)
- SZUMHA (SZUMIFS)
- DARABHA/DARABTELI (COUNTIF)
- DARABHATÖBB (COUNTIFS)
függvények, csak annál sokkal többet tud.
- Kombinálható más függvényekkel, mint például a FILTER, de sok esetben FILTER nélkül is tökéletesen működik.
- Minden olyan helyzetben hasznos, amikor a szűrési kontextust testreszabottan szeretnéd módosítani.
- Hogyha új oszlopban szeretnéd megcsinálni mondjuk a SZUMHA függvényt, akkor EZT a cikket olvasd el!
Készen állsz?
Szeretnél végre magabiztos tudást a Power BI függvények kapcsán? Hogy ne kelljen órákat töltened ilyen cikkek olvasgatásával? Akkor gyere el a Power BI tanfolyamra, ahol
- érthető magyarázatokon keresztül
- sok gyakorlati példával
- mindent lépésről-lépésre megtanulsz
hogy profi Power BI riportokat tudj építeni: