Fonctions > Analyse des données > Lissage > Exemple : Lissage des données
  
Exemple : Lissage des données
Utilisez les fonctions movavg, expsmooth et medsmooth pour calculer une moyenne mobile ou une moyenne de données exponentielles, ou pour effectuer un filtrage de médiane. Ces fonctions lissent les données en moyennant chaque point dans un jeu de données avec lui-même et les points voisins, ce qui diminue les irrégularités dans les données.
Moyenne mobile
Pour les heures t = 0, 1, 2, . . . , n - 2, la valeur lissée à t correspond à la moyenne arithmétique de toutes les observations jusqu'à l'heure t (incluse). Une fois que les observations n sont obtenues, la valeur lissée à l'heure t correspond à la moyenne de l'observation à l'heure t et aux n - 1 observations précédentes.
1. Utilisez la fonction sin pour définir un signal sinusoïdal décroissant.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
2. Utilisez la fonction rnd pour introduire un composant uniforme mais aléatoire pour rendre le signal parasité.
Cliquez pour copier cette expression
3. Appelez la fonction movavg afin de lisser les données à l'aide des fenêtres de largeur 2, 10 et 20, respectivement.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Les grandes largeurs de fenêtre produisent un décalage dans le temps.
Moyenne exponentielle
Utilisez une fonction par incréments pour illustrer la différence entre movavg et expsmooth. La moyenne des données exponentielles est calculée comme suit :
Cliquez pour copier cette expression
Cliquez pour copier cette expression
pour t = 1, . . . , last(x)
L'entrée lissée à l'heure t correspond à la moyenne pondérée de α de l'observation actuelle et l'observation lissée précédente.
1. Définissez et tracez une fonction par incréments.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
0.3 est ajouté au jeu pour configurer la fonction sur zéro pour le t négatif.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
0.7 est utilisé au lieu de 1 pour obtenir une impulsion de largeur 1.0.
Cliquez pour copier cette expression
2. Appliquez la fonction movavg à la fonction par incréments en utilisant une largeur de fenêtre de 4.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
L'application de la fonction movavg aux résultats de la fonction par incréments provoque le lissage de la transition de 1-to-0 dans n=4 échantillons.
3. Appliquez la fonction expsmooth à la fonction par incréments en utilisant une pondération de 0.5.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
L'application de la fonction expsmooth à la fonction par incréments provoque un lissage de la transition de 1-to-0 en une courbe à 10 échantillons.
expsmooth peut être utilisé pour des prévisions de tendances du marché de la même façon que movavg. Cependant, dans la pratique, la plupart des professionnels utilisent d'autres indicateurs, tels que les différences entre deux lissages exponentiels, avec des pondérations différentes, de données brutes identiques.
Filtrage de médiane
Le filtrage de médiane remplace chaque élément de l'entrée par la médiane de l'élément et n-1 de ses voisins ou moins près de la fin du signal. Cette méthode est parfaite lorsque le lissage doit être effectué en maintenant les contours et pour diminuer les bruits.
Sur les grandes matrices, la fonction dure plus longtemps car elle effectue un tri de chaque pixel. Outre la suppression du bruit, le filtrage de médiane a tendance à supprimer les petits transitoires aigus du signal.
1. Définissez et tracez un signal exponentiel.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
2. Utilisez la fonction whiten pour dégrader la qualité du signal en ajoutant du bruit blanc aléatoire.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
3. Utilisez la fonction medsmooth pour appliquer un filtre de médiane, puis tracez le signal filtré.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
La version filtrée du signal est plus lisse.
Modifiez la longueur du filtre pour observer ses effets sur le signal parasité. Dans la pratique, la longueur du filtre de médiane peut être faible comparée à celle du signal.