Samouczek — Dekompozycja szeregu czasowego w Qlik Sense
W tym samouczku pokazano użycie trzech cech wykresu do dekompozycji szeregów czasowych przy użyciu algorytmu STL.
W samouczku używa się danych szeregów czasowych dla liczby pasażerów korzystających z linii lotniczej miesięcznie, aby zademonstrować funkcjonalność algorytmu STL. Do utworzenia wizualizacji zostaną użyte funkcje wykresu STL_Trend, STL_Seasonal i STL_Residual. Aby uzyskać więcej informacji na temat dekompozycji szeregów czasowych w Qlik Sense, zobacz temat Funkcje dekompozycji szeregów czasowych.
Tworzenie aplikacji
Zacznij od utworzenia nowej aplikacji i zaimportowania do niej zestawu danych.
Pobierz ten zestaw danych:
Samouczek — Dekompozycja szeregu czasowego
Ten plik zawiera dane dotyczące miesięcznej liczby pasażerów linii lotniczej.
Wykonaj następujące czynności:
-
Przejdź do strony Utwórz w centrum aktywności Analytics i wybierz Zestaw danych.
-
Kliknij Prześlij plik danych.
-
Dodaj Tutorial - Time series decomposition.csv, używając okna dialogowego.
-
Wybierz przestrzeń.
-
Kliknij Prześlij i analizuj. Spowoduje to utworzenie nowej aplikacji z danymi w wybranym miejscu.
Przygotowanie i załadowanie danych
Aby umożliwić poprawną interpretację pola YearMonth, być może trzeba będzie użyć Menedżera danych w celu rozpoznania pola Qlik Sense jako pola daty, a nie pola z wartościami typu ciąg znaków. Zazwyczaj ten krok jest wykonywany automatycznie, ale w tym przypadku daty są prezentowane w nieco nietypowym formacie RRRR-MM .
-
W Menedżerze danych wybierz tabelę i kliknij .
-
Po zaznaczeniu pola YearMonth kliknij i ustaw Typ pola jako Data.
-
W obszarze Format danych wejściowych wprowadź RRRR-MM.
-
W obszarze Format wyświetlania wprowadź RRRR-MM i kliknij OK.
Pole powinno teraz wyświetlać ikonę kalendarza.
-
Kliknij polecenie Ładuj dane.
Teraz możesz zacząć używać funkcji STL do wizualnego przedstawiania danych.
Tworzenie wizualizacji
Następnie utworzysz dwa wykresy liniowe, aby zademonstrować funkcjonalność funkcji wykresów STL_Trend, STL_Seasonal i STL_Residual.
Otwórz nowy arkusz i nadaj mu tytuł. Włącz Opcje zaawansowane.
Dodaj dwa wykresy liniowe do arkusza. Zmień rozmiar i położenie wykresów, aby pasowały do następującej ilustracji.
Pierwszy wykres liniowy: składowe trendów i sezonowości
Wykonaj następujące czynności:
-
Dodaj tytuł Seasonal and Trend do pierwszego wykresu liniowego.
-
Dodaj YearMonth jako wymiar i oznacz go jako Data.
-
Dodaj następującą miarę i nadaj jej etykietę Passengers per month:
=Sum(Passengers)
-
W obszarze Dane rozwiń miarę Passengers per month i kliknij Dodaj linię trendu.
-
Ustaw Typ na Liniowy.
Porównasz tę linię trendu z wygładzonymi danymi wyjściowymi składowej trendu.
-
Dodaj następującą miarę, aby wykreślić składową trendu, i oznacz ją jako Trend:
=STL_Trend(SUM(Passengers), 12)
-
Następnie dodaj następującą miarę, aby wykreślić składową sezonową, i oznacz ją jako Seasonal:
=STL_Seasonal(SUM(Passengers), 12)
-
W obszarze Wygląd > Prezentacja ustaw Pasek przewijania na Brak.
-
Zachowaj domyślne kolory lub je zmień, aby dopasować do swoich preferencji.
Drugi wykres liniowy: składowa przypadkowa
Następnie skonfiguruj drugi wykres liniowy. Na tej wizualizacji zostanie wyświetlona składowa przypadkowa (resztkowa) szeregu czasowego.
Wykonaj następujące czynności:
-
Przeciągnij wykres liniowy na arkusz. Dodaj tytuł Residual.
-
Dodaj Data jako wymiar.
-
Dodaj następującą miarę i oznacz ją Residual:
=STL_Residual(SUM(Passengers), 12)
-
W obszarze Wygląd > Prezentacja ustaw Pasek przewijania na Brak.
Twój arkusz powinien teraz wyglądać jak ten poniżej.
Interpretacja i wyjaśnienie danych
Dzięki funkcjom arkusza STL możemy uzyskać różne informacje z naszych danych szeregów czasowych.
Składowa trendu
Informacje statystyczne w składowej trendu są pozbawione sezonowości. Ułatwia to dostrzeżenie ogólnych, niepowtarzalnych wahań w czasie. W porównaniu z prostą, liniową linią trendu dla Passengers per month składowa trendu STL odzwierciedla zmieniające się trendy. Wyświetla pewne wyraźne odchylenia, jednocześnie przedstawiając informacje w czytelny sposób. W uchwyceniu tego pomogły działania wygładzające w algorytmie STL.
Spadki liczby pasażerów linii lotniczych widoczne na wykresie trendu STL można wyjaśnić jako część ekonomicznego wpływu recesji, które miały miejsce w latach pięćdziesiątych XX wieku.
Składowa sezonowa
Składowa sezonowa izolowała powtarzające się fluktuacje w całym szeregu czasowym i usunęła ogólne informacje o trendach z tej części analizy. Zaczęliśmy od zestawu danych składającego się z agregacji rok-miesiąc. W przypadku tych danych zakładamy, że dzielimy dane na jednomiesięczne „ziarna”. Definiując wartość okresu równą 12, ustawiamy wykres tak, aby modelował wzorce sezonowe w trakcie jednorocznych (dwunastomiesięcznych) cykli.
Dane pokazują powtarzający się sezonowy wzrost liczby pasażerów linii lotniczych w miesiącach letnich, po którym następują spadki w miesiącach zimowych. Jest to zgodne z założeniem, że lato jest zazwyczaj popularną porą na wakacje i podróże. Widzimy również, że w ciągu szeregu czasowego te sezonowe cykle drastycznie zwiększają swoją amplitudę.
Składowa przypadkowa
Wykres składowej przypadkowej pokazuje wszystkie informacje, które nie zostały uchwycone w dekompozycji trendu i sezonowości.Składowa przypadkowa zawiera szum statystyczny, ale może też wskazywać na nieprawidłowe ustawienie trendu STL i argumentów funkcji sezonowej. Ogólnie rzecz biorąc, jeśli występują okresowe oscylacje składowej przypadkowej sygnału lub wyświetlane informacje wyraźnie nie są losowe, zwykle jest to znak, że w szeregu czasowym znajdują się informacje, które nie są obecnie uchwycone w składowej sezonowej lub trendu. W takim przypadku trzeba sprawdzić definicje każdego argumentu funkcji i ewentualnie zmienić okresowość.
Wartości wygładzaczy
Ponieważ nie określiliśmy żadnych wartości dla wygładzaczy trendu i sezonowości, funkcja użyje wartości domyślnych dla tych parametrów. W Qlik Sense domyślne wartości wygładzaczy w algorytmie STL dają skuteczne wyniki. W rezultacie w większości przypadków argumenty te można pominąć w wyrażeniach.
Wartość wygładzacza trendu używa wymiaru określonego na wykresie. Ponieważ pole YearMonth przedstawia dane według miesięcy, wartością wygładzacza trendu będzie liczba miesięcy. Wygładzacz sezonowy będzie odzwierciedlać zdefiniowaną okresowość. W tym przypadku, ponieważ zdefiniowaliśmy jeden okres jako trwający dwanaście miesięcy (jeden rok), sezonową wartością wygładzacza jest liczba lat. Może to brzmieć niejasno, ale tak naprawdę oznacza to, że aby znaleźć sezonowość, musimy uwzględnić pewną liczbę sezonów. Ta liczba jest wygładzaczem sezonowym.
Inne przydatne informacje
W związku z tym, że amplituda cykli sezonowych rośnie w czasie, stosując bardziej zaawansowane podejście analityczne, można by wykorzystać funkcje logarytmiczne do utworzenia dekompozycji multiplikatywnej. W praktyce prostą miarę amplitudy względnej można utworzyć w Qlik Sense, dzieląc sezonowość przez składową trendu. Kiedy to zrobimy, zauważymy, że z biegiem czasu letnie szczyty każdego cyklu zwiększają względną amplitudę. Amplituda dołków zimowych nie zwiększa się jednak z czasem.