Tabele wirtualne wewnątrz funkcji iteracyjnych w LuckyTemplates – koncepcje języka DAX

W tym samouczku omówię bardzo interesujący temat dotyczący tabel wirtualnych i sposobu ich wykorzystania w usłudze LuckyTemplates w ramach funkcji iteracyjnych. Możesz obejrzeć pełny film tego samouczka na dole tego bloga.

Tabele wirtualne są niezbędnym składnikiem tworzenia zaawansowanej logiki w usłudze LuckyTemplates. W usłudze LuckyTemplates dostępny jest cały podzbiór funkcji, które umożliwiają tworzenie tych wirtualnych tabel.

Te wirtualne tabele mogą czasami służyć jedynie jako filtry i funkcje lub aby dodać kontekst do obliczeń . Ale pozwalają również na wewnętrzną iterację logiki za ich pośrednictwem. Może być oparty na dowolnym kontekście, w którym je umieściłeś.

Duża moc tych wirtualnych tabel pojawia się, gdy używasz ich z różnymi funkcjami iteracyjnymi. Musisz naprawdę zrozumieć „kontekst” i to, jak kombinacja tych miar DAX działa razem w tym konkretnym kontekście.

Funkcje iteracyjne w języku DAX zazwyczaj mają X na końcu, na przykład SUMX , AVERAGEX i wiele innych pochodnych formuł X w usłudze LuckyTemplates.

Najlepszym sposobem wyjaśnienia koncepcji, którą chcę omówić w tym samouczku, jest kilka przykładów z wykorzystaniem tego prostego modelu.

Tabele wirtualne wewnątrz funkcji iteracyjnych w LuckyTemplates – koncepcje języka DAX

Z mojej tabeli Lokalizacje mam relację, która spływa do mojej tabeli Sprzedaż . Może się to wydawać tak ogólne i być może zastanawiasz się, jak zastosować ten rodzaj modelu.

Cóż, w rzeczywistości wszystkie dane są bardzo podobne. To tylko kwestia dobrego skonfigurowania modelu i skonfigurowania go w intuicyjny sposób . Jeśli chcesz trochę lepiej zrozumieć swoje modelowanie, możesz zapoznać się z naszym zaawansowanym kursem modelowania .

Spis treści

Prosta logika z wykorzystaniem SUMX

Sprawdźmy tę prostą logikę, w której możesz obliczyć całkowitą sprzedaż za pomocą .

Tabele wirtualne wewnątrz funkcji iteracyjnych w LuckyTemplates – koncepcje języka DAX

Ogólnie rzecz biorąc, jest to po prostu obliczenie naszej sprzedaży dla każdego regionu. W tym przypadku nie mamy żadnych innych filtrów na naszych danych. Tak więc jest to po prostu od początku czasu wraz z całkowitą sprzedażą .

Tabele wirtualne wewnątrz funkcji iteracyjnych w LuckyTemplates – koncepcje języka DAX

Chcę jednak pokazać coś nieco bardziej wyjątkowego, jeśli chodzi o to, w jaki sposób możemy iterować logikę w tych wirtualnych tabelach.

Używanie FILTRA dla tabel wirtualnych

Może się zdarzyć, że zechcesz zacząć obliczać różne rzeczy. To, co możesz chcieć zrobić, to obliczyć sprzedaż tego, co można zaklasyfikować jako dobrego klienta .

Tabele wirtualne wewnątrz funkcji iteracyjnych w LuckyTemplates – koncepcje języka DAX

Spróbujmy przeanalizować tę konkretną formułę i określić, co nam ona umożliwia.

Tabele wirtualne wewnątrz funkcji iteracyjnych w LuckyTemplates – koncepcje języka DAX

Zobaczysz tutaj, że używamy SUMX .

Tabele wirtualne wewnątrz funkcji iteracyjnych w LuckyTemplates – koncepcje języka DAX

Ale w tej części miary zmieniamy wirtualną tabelę, której używamy jako kontekstu do obliczeń .

Tabele wirtualne wewnątrz funkcji iteracyjnych w LuckyTemplates – koncepcje języka DAX

Dlatego zawsze należy pamiętać, że wszelkie obliczenia w usłudze LuckyTemplates odbywają się w procesie dwuetapowym. Pierwszym z nich jest przetwarzanie początkowego kontekstu. A potem jest obliczenie miary. To zdecydowanie bardzo uproszczona wersja.

Przyjrzyjmy się temu pierwszemu wynikowi, w którym pierwszym filtrem jest Connecticut . Oczywiście za modelem odbywa się już pewne filtrowanie.

Tabele wirtualne wewnątrz funkcji iteracyjnych w LuckyTemplates – koncepcje języka DAX

Ponadto logika postępowania w ramach funkcji tworzy wirtualną tabelę wszystkich klientów, którzy dokonali zakupu w Connecticut .

Tabele wirtualne wewnątrz funkcji iteracyjnych w LuckyTemplates – koncepcje języka DAX

Jest to po prostu jednokolumnowa tabela wszystkich klientów, którzy dokonali zakupów w Connecticut .

Następnie w ramach tego konkretnego wirtualnego stołu uruchamiamy logikę, która odfiltruje każdego klienta, który dokonał zakupu poniżej 2000. Zachowa to tylko tych klientów, którzy kupili powyżej 2000.

Tabele wirtualne wewnątrz funkcji iteracyjnych w LuckyTemplates – koncepcje języka DAX

Na podstawie tej nowej tabeli w końcu obliczymy Total Sales .

Tabele wirtualne wewnątrz funkcji iteracyjnych w LuckyTemplates – koncepcje języka DAX

I to właśnie umożliwia nam SUMX . To naprawdę technika, którą, miejmy nadzieję, możesz wdrożyć na różne sposoby.

Zmiana logiki dla wirtualnych tabel

Dodatkowo możesz zmienić istniejącą logikę. Jak widać, ta liczba jest obecnie statyczna. Ale możesz uczynić go dynamicznym i możesz go wygenerować samodzielnie.

Tabele wirtualne wewnątrz funkcji iteracyjnych w LuckyTemplates – koncepcje języka DAX

W tym przypadku właśnie zmieniłem go na 5000. A ponieważ użyliśmy SUMX , ta tabela będzie szukać tylko tych dobrych klientów, którzy kupili ponad 5000 . A potem policzy sprzedaż od tych dobrych klientów.

Używanie SUMMARIZE dla wirtualnych tabel

Oto kolejny przykład, który możesz przenieść na inny poziom.

Tabela w funkcji FILTR może być bardzo różna i może być bardziej szczegółową tabelą. W tym przypadku patrzymy zarówno na sprzedaż dobrych klientów, jak i kupowane przez nich produkty .

Tabele wirtualne wewnątrz funkcji iteracyjnych w LuckyTemplates – koncepcje języka DAX

Nie będzie to już wirtualna tabela z jedną kolumną. Będzie to dwukolumnowa wirtualna tabela każdego klienta i każdego produktu, który kupił w Connecticut . A potem zmienia się, gdy schodzisz do różnych regionów lub różnych stanów.

Tabele wirtualne wewnątrz funkcji iteracyjnych w LuckyTemplates – koncepcje języka DAX

Korzystając z funkcji , odfiltrujemy wszystkich klientów i sprzedaż produktów poniżej 2000. Następnie zatrzymamy tylko tych, którzy mają powyżej 2000 .

Tabele wirtualne wewnątrz funkcji iteracyjnych w LuckyTemplates – koncepcje języka DAX

Następnie obliczymy Total Sales za pomocą SUMX .

Tabele wirtualne wewnątrz funkcji iteracyjnych w LuckyTemplates – koncepcje języka DAX

I tak właśnie można wewnętrznie iterować logikę w wirtualnej tabeli i oceniać poszczególne wyniki.

Używanie CALCULATE jako filtra

Co więcej, możesz obliczyć ten sam scenariusz w inny sposób, a to nadal da ci ten sam wynik. Najpierw przywróćmy to z powrotem do 5000 .

Tabele wirtualne wewnątrz funkcji iteracyjnych w LuckyTemplates – koncepcje języka DAX

Teraz widzisz, że wyniki w tych dwóch kolumnach są teraz takie same. Ale obliczyłem to trochę inaczej.

Tabele wirtualne wewnątrz funkcji iteracyjnych w LuckyTemplates – koncepcje języka DAX

W przypadku miary Good Customer Sales użyliśmy funkcji zamiast SUMX .

Tabele wirtualne wewnątrz funkcji iteracyjnych w LuckyTemplates – koncepcje języka DAX

Funkcja CALCULATE umożliwia zrobienie czegoś podobnego w naszym poprzednim scenariuszu SUMX . Ale zamiast być funkcją iteracyjną (jak w przypadku SUMX ), w rzeczywistości została użyta jako filtr . Został użyty do zmiany kontekstu obliczeń w programie CALCULATE.

To kolejny sposób zastosowania tej logiki w modelach danych.


Opanowanie tabel wirtualnych w usłudze LuckyTemplates przy użyciu języka DAX
Korzystanie z funkcji iteracyjnych SUMX i AVERAGEX w usłudze LuckyTemplates
Praca z funkcjami iteracyjnymi w języku DAX

Wniosek

To naprawdę dobry samouczek do szczegółowego przeglądu. Zrozumienie tej koncepcji logiki iteracyjnej za pomocą wirtualnej tabeli da ci nieskończone możliwości analityczne, które możesz osiągnąć w dowolnych danych.

Jeśli dobrze to zrozumiesz, zaczniesz dostrzegać, że z perspektywy analitycznej naprawdę nie ma nic, czego nie mógłbyś odkryć przy bardzo dobrym wykorzystaniu miar LuckyTemplates i DAX.

Jeśli chcesz dowiedzieć się więcej o łączeniu wielu funkcji języka DAX w celu uzyskania optymalnego efektu, zapoznaj się z modułem w .

Powodzenia z tym!

***** Nauka LuckyTemplates? *****






Leave a Comment

Dodawaj, usuwaj i zmieniaj nazwy kolumn w R za pomocą Dplyr

Dodawaj, usuwaj i zmieniaj nazwy kolumn w R za pomocą Dplyr

W tym samouczku omówimy pakiet dplyr, który umożliwia sortowanie, filtrowanie, dodawanie i zmianę nazw kolumn w języku R.

Funkcje zbierania w Microsoft Power Automate

Funkcje zbierania w Microsoft Power Automate

Odkryj różnorodne funkcje zbierania, które można wykorzystać w Power Automate. Zdobądź praktyczne informacje o funkcjach tablicowych i ich zastosowaniu.

Oceń wydajność kodu DAX w DAX Studio

Oceń wydajność kodu DAX w DAX Studio

Z tego samouczka dowiesz się, jak ocenić wydajność kodów DAX przy użyciu opcji Uruchom test porównawczy w DAX Studio.

Czym jest self w Pythonie: przykłady z życia wzięte

Czym jest self w Pythonie: przykłady z życia wzięte

Czym jest self w Pythonie: przykłady z życia wzięte

Jak zapisać i załadować plik RDS w R

Jak zapisać i załadować plik RDS w R

Dowiesz się, jak zapisywać i ładować obiekty z pliku .rds w R. Ten blog będzie również omawiał sposób importowania obiektów z R do LuckyTemplates.

Powrót do pierwszych N dni roboczych — rozwiązanie języka kodowania DAX

Powrót do pierwszych N dni roboczych — rozwiązanie języka kodowania DAX

Z tego samouczka języka kodowania DAX dowiesz się, jak używać funkcji GENERUJ i jak dynamicznie zmieniać tytuł miary.

Zaprezentuj spostrzeżenia przy użyciu wielowątkowej techniki dynamicznych wizualizacji w usłudze LuckyTemplates

Zaprezentuj spostrzeżenia przy użyciu wielowątkowej techniki dynamicznych wizualizacji w usłudze LuckyTemplates

W tym samouczku omówiono sposób korzystania z techniki wielowątkowych wizualizacji dynamicznych w celu tworzenia szczegółowych informacji na podstawie dynamicznych wizualizacji danych w raportach.

Wprowadzenie do filtrowania kontekstu w usłudze LuckyTemplates

Wprowadzenie do filtrowania kontekstu w usłudze LuckyTemplates

W tym artykule omówię kontekst filtra. Kontekst filtrowania to jeden z głównych tematów, z którym każdy użytkownik usługi LuckyTemplates powinien zapoznać się na początku.

Najlepsze wskazówki dotyczące korzystania z aplikacji w usłudze online LuckyTemplates

Najlepsze wskazówki dotyczące korzystania z aplikacji w usłudze online LuckyTemplates

Chcę pokazać, jak usługa online LuckyTemplates Apps może pomóc w zarządzaniu różnymi raportami i spostrzeżeniami generowanymi z różnych źródeł.

Analizuj zmiany marży zysku w godzinach nadliczbowych — Analizuj za pomocą LuckyTemplates i DAX

Analizuj zmiany marży zysku w godzinach nadliczbowych — Analizuj za pomocą LuckyTemplates i DAX

Dowiedz się, jak obliczyć zmiany marży zysku przy użyciu technik, takich jak rozgałęzianie miar i łączenie formuł języka DAX w usłudze LuckyTemplates.