Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

Zamierzam pokazać, jak używać funkcji IsAfterToday w rozszerzonych tabelach dat na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates.

Jeśli chodzi o funkcje DAX i inne narzędzia, przypisuję im w głowie określone zadania lub osoby, aby łatwo zapamiętać, co robią. postrzegam jako kontrolera ruchu lotniczego. Myślę o jako o bramkarzu w klubie, który decyduje, kto wejdzie, a kto nie.

Jeśli chodzi o IsAfterToday , postrzegam go jako Terminatora, który przegląda moje dane, tabele i wizualizacje, aby usunąć wszystko, czego nie potrzebuję. Możesz obejrzeć pełny film tego samouczka na dole tego bloga.

Spis treści

Dostęp do IsAfterToday poprzez rozszerzoną tabelę dat

Aby uzyskać dostęp do IsAfterToday , muszę użyć rozszerzonej tabeli dat . Dzieje się tak dlatego, że funkcja IsAfterToday w rzeczywistości nie jest funkcją języka DAX ; jest częścią samego stołu.

Jeśli przejdziesz do widoku danych tabeli, kolumna IsAfterToday będzie wyglądać następująco.

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

Logika stojąca za IsAfterToday jest prosta. Jeśli data przypada po dniu dzisiejszym, jest to PRAWDA. Jeśli to było przed dzisiaj, to jest FAŁSZ.

Aby dokładniej pokazać, co potrafi IsAfterToday, omówię dwa przypadki użycia, które doskonale pokazują jego przydatność w scenariuszach analizy czasowej usługi LuckyTemplates.

Kończenie skumulowanych sum

Pierwszy przypadek użycia dotyczy zakończenia skumulowanych sum . Jest to przypadek, o który często pyta się na forum LuckyTemplates.

W tym przykładzie pokażę, jak użycie miary języka DAX wymagałoby około 38 wierszy, ale jak użycie funkcji IsAfterToday może wykonać tę pracę za pomocą zaledwie 2 kliknięć bez użycia języka DAX.

Ten przypadek dotyczy podstawowej struktury.

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

Mam kwartał i rok, całkowitą sprzedaż i łączną sprzedaż.

Całkowita sprzedaż trwa od 2018 roku do chwili obecnej, a następnie jest kontynuowana z niektórymi prognozowanymi danymi do końca 2020 roku.

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

Jeśli chodzi o skumulowaną sprzedaż , jest to tylko podstawowy wzorzec skumulowanej sprzedaży z zastosowanym w datach.

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

Wizualizacja pokazuje mi, że gdzieś jest problem, ponieważ dane stają się wątpliwe po wypadnięciu Total Sales .

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

Patrząc wstecz na tabelę, nie ma danych za rok 2021.

Tak więc na wykresie ostatnia cyfra powtarza się w kółko aż do końca 2021 roku.

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

Jak więc wyczyścić całkowitą sprzedaż i skumulowaną sprzedaż?

Najpierw użyję podejścia DAX. Zacznę od upuszczenia tej kolumny Alt Cumulative Sales do tabeli.

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

Tak wygląda miara Alt Cumulative Sales .

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

Pokazuje również filtr , który mówi, że jeśli IsAfterToday ma , to jest do niego przypisany Jeśli nie, to jest do niego przypisywana wartość sprzedaży skumulowanej .

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

Tak więc, jeśli wrócę do tabeli i sprawdzę, to pokazuje, że zwraca właściwą wartość wiersz po wierszu.

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

Problem tkwi jednak w Total.

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

Suma pokazuje 73 miliony, podczas gdy powinna pokazywać ostatnią wartość, czyli 59 milionów.

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

Wrzucę więc sumę skumulowaną Alt2 do tabeli, aby pokazać, jak powinny wyglądać prawidłowe dane.

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

Teraz pokażę ci różnicę między kolumną Alt Cumulative Sales a Alt2 Cumulative Sales .

Oto ta sama miara sprzedaży skumulowanej .

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

Oto DAXFilter , w którym zastosowano IsAfterToday .

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

W przypadku środka, którego użyłem wcześniej, po tym nic nie wyszło. Dlatego wartości były poprawne dla każdego wiersza, ale nie było sposobu, aby obliczenia mogły stwierdzić, czy osiągnęły ostatni wiersz, czy nie.

W tym przypadku istnieje zupełnie nowa struktura, która to robi.

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

Stosowana jest funkcja , więc jeśli osiągnę wiersz sumy, automatycznie wymuszę sumę wszystkich skumulowanych sprzedaży do tego punktu.

Jest to podejście, które stosuje wielu użytkowników LuckyTemplates, głównie dlatego, że faktycznie działa. Ale znowu oznacza to również konieczność napisania ponad 30 wierszy języka DAX.

Tym razem pokażę Ci, jak to zrobić za pomocą kilku kliknięć.

Po prostu kliknij tę małą strzałkę tutaj, aby wyświetlić filtry.

Tak to będzie wyglądać po wyświetleniu filtrów.

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

Następnie w polu Fields wyszukam IsAfterToday .

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

Przeciągnę i upuścię to do moich filtrów.

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

Następnie pod tym filtrem IsAfterToday zaznaczę False , co oznacza, że ​​odnoszę się do dnia dzisiejszego lub wcześniejszych dni.

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

Spójrz, jak to oczyszcza sytuację. Wszystkie wartości są teraz we właściwych miejscach. Sumy też się zgadzają.

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

To samo można powiedzieć o wizualizacji i fragmentatorach.

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

Najwyraźniej takie podejście jest znacznie bardziej wydajne niż stosowanie wyłącznie podejścia DAX.

Podział danych bieżących i prognozowanych

Zajmę się teraz drugim przypadkiem użycia, który polega na pobraniu pola Total Sales i podzieleniu danych na dane bieżące i dane prognozy za pomocą funkcji IsAfterToday .

Chcę też uczynić go dynamicznym, aby z czasem wprowadzał więcej danych do rzeczywistych i mniej danych do prognozy, aż dojdzie do końca okresu prognozy i wszystko stanie się rzeczywiste.

Nadal mam łączną sprzedaż z ostatniego przykładu. Jak wspomniano wcześniej, zawiera dane z przeszłości i teraźniejszości oraz dane z końca roku. Jest to więc mieszanka rzeczywistych danych i danych prognozowanych.

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

Oprócz tego mam też moją podstawową miarę Skumulowana sprzedaż i wizualizację Skumulowana sprzedaż .

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

Powiedzmy, że to, co chcieliśmy zrobić, to wziąć i faktycznie rozłożyć tę łączną sprzedaż w naszej wizualizacji na rzeczywistą i prognozowaną.

Tak więc w przypadku rzeczywistej sprzedaży tak będzie wyglądać miara DAX.

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

Zasadniczo oznacza to, że jeśli data zwróci dla IsAfterToday , należy użyć wartości Cumulative Actual . Jeśli nie, należy zwrócić BLANK .

Teraz wezmę miarę dla skumulowanej prognozowanej sprzedaży i dodam ją również do moich wartości .

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

Jednak patrząc na DAX, pokazuje dla IsAfterToday , aby zwrócić prognozowane wartości.

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

W obszarze wizualizacje usunę Skumulowaną sprzedaż .

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

Następnie zamiast tego usunę Skumulowaną rzeczywistą sprzedaż i Skumulowaną prognozowaną sprzedaż .

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates

Teraz wizualizacja pokazuje skumulowaną sprzedaż rzeczywistą i skumulowaną sprzedaż prognozowaną w wyraźnym rozkładzie na wizualizacji.

Korzystanie z funkcji IsAfterToday na potrzeby scenariuszy analizy czasowej usługi LuckyTemplates


Zbuduj obszerną tabelę dat w usłudze LuckyTemplates Naprawdę szybkie
prognozowanie w usłudze LuckyTemplates: porównanie wydajności z prognozami łącznie W/DAX
Normalizacja danych w usłudze LuckyTemplates dla wyników z różnych dni

Wniosek

To tylko dwa przydatne przypadki, w których IsAfterToday okazuje się korzystne. Zachęcam do kliknięcia i eksperymentowania z nim, aby odkryć jeszcze więcej sposobów wykorzystania go do rozwiązywania problemów z analizą czasu w usłudze LuckyTemplates.

Był to również dobry sposób na pokazanie, że chociaż język DAX jest naprawdę potężny, istnieją również przypadki, w których potrzebna jest szybsza alternatywa. Wszystko polega na opanowaniu zalet i wad używania języka DAX w dowolnej sytuacji, abyś zawsze mógł wybrać podejście, które chcesz zastosować.

Wszystkiego najlepszego,

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.