Didacticiel - Décomposition de série chronologique dans Qlik Sense
Ce didacticiel montre l'utilisation de trois fonctions de graphique pour décomposer une série chronologique via l'algorithme STL.
Ce didacticiel utilise les données de série chronologique du nombre de passagers empruntant une compagnie aérienne par mois pour démontrer la fonctionnalité de l'algorithme STL. Les fonctions de graphique STL_Trend, STL_Seasonal et STL_Residual seront utilisées pour créer les visualisations. Pour plus d'informations sur la décomposition de série chronologique dans Qlik Sense, voir Fonctions de décomposition de série chronologique (Time series).
Création d'une application
Commencez par créer une nouvelle application et par y importer le jeu de données.
Téléchargez le jeu de données suivant :
Didacticiel - Décomposition de série chronologique
Ce fichier contient les données concernant le nombre de passagers d'une compagnie aérienne par mois.
Procédez comme suit :
-
Depuis le hub, cliquez sur Créer une nouvelle application.
-
Ouvrez l'application et glissez-y le fichier Tutorial - Time series decomposition.csv.
Préparation et chargement des données
Pour que Qlik Sense puisse interpréter correctement le champ YearMonth, vous devrez peut-être utiliser le Gestionnaire de données pour reconnaître le champ comme un champ de date et non comme un champ de valeurs de type chaîne. En règle générale, cette étape est gérée automatiquement, mais, dans le cas présent, les dates sont présentées au format un peu inhabituel YYYY-MM.
-
Dans le Gestionnaire de données, sélectionnez la table et cliquez sur .
-
Avec le champ YearMonth sélectionné, cliquez sur et définissez Type de champ sur Date.
-
Sous Format d'entrée, saisissez YYYY-MM.
-
Sous Format d'affichage, saisissez YYYY-MM et cliquez sur OK.
Le champ doit maintenant afficher l'icône de calendrier.
-
Cliquez sur Charger les données.
À présent, vous pouvez commencer à utiliser les fonctions STL pour représenter visuellement vos données.
Création des visualisations
Ensuite, vous allez créer deux graphiques en courbes pour démontrer la fonctionnalité des fonctions de graphique STL_Trend, STL_Seasonal et STL_Residual.
Ouvrez une nouvelle feuille et donnez-lui un titre.
Ajoutez deux graphiques en courbes à la feuille. Redimensionnez et repositionnez les graphiques pour qu'ils correspondent à l'image suivante.
Premier graphique en courbes : composantes Tendance et Saisonnier
Procédez comme suit :
-
Ajoutez le titre Saisonnier et tendance au premier graphique en courbes.
-
Ajoutez YearMonth comme dimension et libellez-la Date.
-
Ajoutez la mesure suivante et libellez-la Passagers par mois :
=Sum(Passengers)
-
Sous Données, développez la mesure Passagers par mois et cliquez sur Ajouter une courbe de tendance.
-
Définissez le Type sur Linéaire.
Vous allez comparer cette courbe de tendance à la sortie lissée de la composante Tendance.
-
Ajoutez la mesure suivante pour tracer la composante Tendance et libellez-la Tendance :
=STL_Trend(SUM(Passengers), 12)
-
Ajoutez ensuite la mesure suivante pour tracer la composante Saisonnier et libellez-la Saisonnier :
=STL_Seasonal(SUM(Passengers), 12)
-
Sous Aspect > Présentation, définissez Barre de défilement sur Aucune.
-
Conservez les couleurs par défaut ou modifiez-les, selon vos préférences.
Deuxième graphique en courbes : composante Résiduel
Configurez ensuite le deuxième graphique en courbes. Cette visualisation affichera la composante Résiduel de la série chronologique.
Procédez comme suit :
-
Faites glisser un graphique en courbes sur la feuille. Ajoutez le titre Résiduel.
-
Ajoutez Date comme dimension.
-
Ajoutez la mesure suivante et libellez-la Résiduel :
=STL_Residual(SUM(Passengers), 12)
-
Sous Aspect > Présentation, définissez Barre de défilement sur Aucune.
Votre feuille doit maintenant ressembler à celle ci-dessous.
Interprétation et explication des données
Grâce aux fonctions de graphique STL, nous pouvons tirer un certain nombre d'informations analytiques de nos données de série chronologique.
Composante Tendance
Les informations statistiques de la composante Tendance sont indépendantes de la saison. Cela facilite l'identification des fluctuations générales non répétitives au fil du temps. Contrairement à la courbe de tendance droite linéaire de Passagers par mois, la composante Tendance STL capture les tendances changeantes. Elle affiche certains écarts clairs tout en présentant les informations de manière lisible. Les comportements lissants de l'algorithme STL ont permis de capturer ces informations.
Les chutes de nombre de passagers de la compagnie aérienne visibles sur le graphique Tendance STL peuvent s'expliquer par l'impact économique des récessions qui se sont produites dans les années 1950.
Composante Saisonnier
La composante Saisonnier, hors tendance, a permis d'isoler les fluctuations récurrentes tout au long de la série chronologique et de supprimer les informations de tendances générales de cette partie de l'analyse. Nous avons démarré avec un jeu de données constitué d'agrégations an-mois. Avec ces données, nous segmentons implicitement les données en « granules » d'un mois. En définissant une valeur de période égale à 12, nous demandons au graphique de modéliser les tendances saisonnières au cours de cycles d'un an (douze mois).
Dans les données, on constate un pattern saisonnier répétitif d'augmentation des passagers au cours des mois d'été, suivie d'une diminution au cours des mois d'hiver. Cela correspond à l'idée que l'été est généralement une période propice pour prendre des congés et voyager. Nous constatons également qu'au fil de la série chronologique, l'amplitude de ces cycles saisonniers augmente considérablement.
Composante Résiduel
Le graphique de la composante Résiduel affiche l'ensemble des informations non capturées dans la décomposition Tendance et Saisonnier. La composante Résiduel inclut les parasites statistiques, mais peut également indiquer un réglage incorrect des arguments de fonction Tendance et Saisonnier STL. En règle générale, s'il existe des variations périodiques dans la composante Résiduel du signal, ou si les informations affichées ne sont clairement pas aléatoires, cela indique que certaines informations de la série chronologique ne sont actuellement pas capturées dans les composantes Saisonnier et Tendance. Dans ce cas, vous devez revoir vos définitions de chaque argument de fonction et éventuellement modifier la périodicité.
Valeurs de lissage
Étant donné que nous n'avons spécifié aucune valeur pour les facteurs de lissage Tendance et Saisonnier, la fonction utilisera les valeurs par défaut pour ces paramètres. Dans Qlik Sense, les valeurs de lissage par défaut de l'algorithme STL produisent des résultats efficaces. C'est pourquoi, dans la plupart des cas, ces arguments peuvent être retirés des expressions.
La valeur de lissage Tendance utilise la dimension spécifiée dans le graphique. Étant donné que le champ YearMonth présente les données par mois, la valeur de lissage Tendance sera le nombre de mois. Le facteur de lissage Saisonnier reflétera la périodicité définie. Dans le cas présent, étant donné que nous avons défini une période de douze mois (un an), la valeur de lissage Saisonnier correspond au nombre d'années. Cela peut paraître confus, mais cela veut effectivement dire que pour trouver la saisonnalité, nous devons nous pencher sur un certain nombre de saisons. Ce nombre est le facteur de lissage Saisonnier.
Autre informations utiles
Étant donné que l'amplitude des cycles saisonniers augmente au fil du temps, un approche analytique plus avancée pourrait consister à utiliser des fonctions logarithmiques pour créer une décomposition multiplicative. Dans la pratique, il est possible de créer une simple mesure d'amplitude relative dans Qlik Sense en divisant la composante Saisonnier par la composante Tendance. Après cela, on note qu'au fil du temps, les pics estivaux de chaque cycle augmentent en termes d'amplitude relative. L'amplitude des creux hivernaux, en revanche, n'augmente pas au fil du temps.