09.2024 | dax | miary centralne | power bi
Artykuł stanowi kontynuację tematu, związanego z miarami centralnymi, rozpoczętą w artykule:
=> Miary centralne w analizie danych e-commerce: praktyczne zastosowanie w Pythonie i SQL
Niniejszy artykuł skupia się na części praktycznej, związanej z wyliczeniem miar centralnych w środowisku Microsoft Power BI, z wykorzystaniem składni DAX.
W kolejnych punktach pokazujemy wyliczenie klasycznej średniej arytmetycznej, mediany oraz mody.
Średnia arytmetyczna to suma wszystkich wartości podzielona przez liczbę obserwacji. Jest użyteczna w określaniu przeciętnej wartości w zbiorze danych.
Załóżmy, że mamy tabelę z wartościami zamówień w naszym sklepie e-commerce. Aby obliczyć średnią wartość zamówienia, możemy utworzyć miarę w Power BI, korzystając z funkcji AVERAGE
.
Średnia Wartość Zamówienia = AVERAGE('Zamówienia'[Kwota Zamówienia])
Obliczenie średniego czasu spędzanego przez użytkowników na naszej stronie, przed dokonaniem zakupu:
Średni Czas Na Stronie = AVERAGE('Dane Strony'[Czas Na Stronie])
Mediana to wartość środkowa w uporządkowanym zbiorze danych. Jest szczególnie przydatna, gdy mamy do czynienia z danymi, które zawierają wartości odstające, ponieważ mediana nie jest na nie wrażliwa.
W DAX możemy obliczyć medianę, używając funkcji MEDIAN
. Przykład obliczenia mediany wartości zamówień wygląda następująco:
Mediana Wartości Zamówienia = MEDIAN('Zamówienia'[Kwota Zamówienia])
Teraz obliczmy medianę dla czasu spędzanego przez użytkowników, na naszej stronie www, przed dokonaniem zakupu:
Mediana Czasu Na Stronie = MEDIAN('Dane Strony'[Czas Na Stronie])
Moda to wartość, która występuje najczęściej w zbiorze danych. W e-commerce może to być na przykład najczęściej wybierana kwota zakupu. DAX niestety nie ma wbudowanej funkcji typu MODE
, ale można stworzyć modę za pomocą bardziej zaawansowanego wyrażenia.
Aby obliczyć mode w DAX, możemy użyć kombinacji funkcji GROUPBY
i MAXX
, aby znaleźć wartość, która pojawia się najczęściej:
Najczęstsza Kwota Zamówienia =
VAR GroupedData =
ADDCOLUMNS(
SUMMARIZE('Zamówienia', 'Zamówienia'[Kwota Zamówienia]),
"Liczba", COUNTX(FILTER('Zamówienia', 'Zamówienia'[Kwota Zamówienia] = EARLIER('Zamówienia'[Kwota Zamówienia])), 'Zamówienia'[Kwota Zamówienia])
)
RETURN
MAXX(
TOPN(1, GroupedData, [Liczba], DESC),
'Zamówienia'[Kwota Zamówienia]
)
Ten kod zwróci najczęstszą kwotę zamówienia (mode) w zestawie danych.
Zobaczmy teraz na drugi przykład, który pokazuje przypadek obliczenia mody dla czasu spędzanego przez użytkowników na stronie www, przed dokonaniem zakupu:
Najczęstszy Czas Na Stronie =
VAR GroupedData =
ADDCOLUMNS(
SUMMARIZE('Dane Strony', 'Dane Strony'[Czas Na Stronie]),
"Liczba", COUNTX(FILTER('Dane Strony', 'Dane Strony'[Czas Na Stronie] = EARLIER('Dane Strony'[Czas Na Stronie])), 'Dane Strony'[Czas Na Stronie])
)
RETURN
MAXX(
TOPN(1, GroupedData, [Liczba], DESC),
'Dane Strony'[Czas Na Stronie]
)
OK. Ale pytacie się w listach, którą miarę centralną mam wybrać. Spróbujmy odpowiedzieć na to pytanie.
Wybór odpowiedniej miary centralnej zależy od charakteru danych i celu analizy:
W Power BI można te miary z łatwością wizualizować na wykresach lub w tabelach. Na przykład, możemy utworzyć wykres rozrzutu pokazujący relację między czasem spędzonym na stronie a wartością zakupu, a także dodać linie pomocnicze, reprezentujące średnią, medianę i modę:
Miary centralne są nieocenionymi narzędziami w analizie danych e-commerce. Dzięki nim możemy:
Każda z tych miar ma swoje zalety i ograniczenia. Średnia jest wrażliwa na wartości skrajne, podczas gdy mediana jest bardziej odporna. Moda może być szczególnie użyteczna dla danych kategorialnych lub dyskretnych. Najlepsze rezultaty osiągniemy, stosując je w połączeniu, analizując dane w kontekście specyficznych potrzeb biznesowych.
Napisz do mnie poprzez formularz kontaktowy.