Filtrowanie TOP N w Power Pivot i Power BI (cz. 1) – interfejs i kolumna obliczeniowa

Istnieje wiele sposobów na przygotowanie filtra TOP N, który będzie działał w modelu danych (w Excel Power Pivot lub Power BI). Zacznijmy od jego wersji statycznej, aby w kolejnym wpisie przeczytać o możliwości dynamicznej zmiany liczby N parametrem.

Sposób 1 – filtrowanie tabeli przestawnej Excel lub wizualizacji Power BI

Najprostszy sposób na filtrowanie miar – wybór filtru top N z interfejsu – jest możliwy w sytuacji, gdy w wierszach tabeli przestawnej lub osi na wykresie Power BI posługujemy się polem filtrowanym. W naszym scenariuszu będzie to pole Klient.

Filtrowanie TOP N w Excelu

 

 

 

Filtrowanie TOP N w Power BI

Sposób 2 – utworzenie kolumny obliczeniowej w modelu danych Excel lub Power BI

Możemy utworzyć kolumnę obliczeniową, która będzie posiadała znacznik czy dany klient należy do TOP N czy nie. Rozwiązanie identycznie wygląda w Power Pivot i Power BI i składa się z następujących kroków (przykład dla modelu danych z tabelą sprzedażową Dane i Klienci):

  1. Utwórz miarę Sprzedaż Total:
Sprzedaż Total = SUM(Dane[Sprzedaż])
  1. W tabeli Klienci utwórz kolumnę obliczeniową
TOP10 = if(RANKX(ALL(Klienci);[Sprzedaż Total])<=10;"TOP10";"Pozostałe")

Formuła tworzy wirtualną tabelę wszystkich klientów, liczy dla nich Sprzedaż Total i sprawdza, czy miejsce rankingowe jest w pierwszej dziesiątce. Jeśli tak, zwraca znacznik TOP10, a w przeciwnym razie znacznik Pozostałe.

 

Jeśli kolumna ma zwracać nazwiska TOP klientów, a resztę grupować do pozostałych, możemy zmienić jej treść:

TOP10 = if(RANKX(ALL(Klienci);[Sprzedaż Total])<=10;Klienci[Klient];"Pozostałe")

Udostępnij ten wpis:

Brak komentarzy

  1. Cześć,
    a jak zmienić tą formułę w power pilot, żeby dla każdego klienta pokazywał po 5 największe wartości sprzedaży- mam ogromną bazę danych która nie mieści się w excelu
    Marzena

    • Cześć Marzena, podeślij plik z modelem danych i oczekiwany układ raportu – wtedy mogę podpowiedzieć na konkretnym przykładzie.

    • Mam ten sam problem. Dla każdej pozycji chciałabym 5 największych wartości sprzedaży, czy jest już gdzieś takie rozwiązanie?

      • Cześć Marta, proponuję zbudować nową miarę (oto przykład dla pokazywania tylko top 5 Nazw produktów dla Kategorii produktu):
        Ranking Produktów = RANKX(ALLSELECTED(Produkty[Nazwa Produktu]),[Sprzedaż Total])
        Następnie miarę wrzuć na panel boczny Filtry i ustaw warunek <=5.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *