Saturday 4 February 2017

R Filtre De Moyenne Mobile Exponentiel

Moyennes mobiles En R À ma connaissance, R n'a pas de fonction intégrée pour calculer les moyennes mobiles. En utilisant la fonction de filtrage, on peut écrire une fonction courte pour les moyennes mobiles: On peut alors utiliser la fonction sur n'importe quelle donnée: mav (data), ou mav (data, 11) si on veut spécifier un nombre différent de points de données Que les 5 tracés par défaut comme prévu: plot (mav (data)). En plus du nombre de points de données sur lesquels la moyenne, nous pouvons également changer l'argument des côtés des fonctions de filtre: sides2 utilise les deux côtés, sides1 utilise des valeurs passées seulement. Partager cette page: Navigation des messages Navigation des commentaires Navigation des commentaires Filtre exponentiel Cette page décrit le filtrage exponentiel, le filtre le plus simple et le plus populaire. Cela fait partie de la section Filtrage qui fait partie de A Guide to Fault Detection and Diagnostic .. Vue d'ensemble, constante de temps et équivalent analogique Le filtre le plus simple est le filtre exponentiel. Elle n'a qu'un seul paramètre d'accord (autre que l'intervalle d'échantillonnage). Elle nécessite le stockage d'une seule variable - la sortie précédente. Il s'agit d'un filtre IIR (autorégressif) - les effets d'un changement d'entrée décroissent exponentiellement jusqu'à ce que les limites d'affichage ou l'arithmétique informatique le masquent. Dans diverses disciplines, l'utilisation de ce filtre est également appelée lissage 8220exponentiel8221. Dans certaines disciplines telles que l'analyse d'investissement, le filtre exponentiel est appelé 8220 Moyenne mobile pondérée exponentiellement8221 (EWMA), ou juste 8220 Moyenne mobile exponentielle8221 (EMA). Cela empiète sur la terminologie traditionnelle ARMA 8220moving average8221 de l'analyse des séries temporelles, car il n'y a pas d'historique d'entrée utilisé - juste l'entrée courante. Il s'agit de l'équivalent temps discret du lag8221 de premier ordre 8220 couramment utilisé dans la modélisation analogique de systèmes de contrôle en temps continu. Dans les circuits électriques, un filtre RC (filtre avec une résistance et un condensateur) est un décalage de premier ordre. En mettant l'accent sur l'analogie avec les circuits analogiques, le paramètre d'accord unique est la constante de temps 82208221, généralement écrite sous la forme de la lettre minuscule grecque Tau (). En fait, les valeurs aux temps d'échantillonnage discrets correspondent exactement au décalage de temps continu équivalent avec la même constante de temps. La relation entre l'implémentation numérique et la constante de temps est représentée dans les équations ci-dessous. Equations du filtre exponentiel et initialisation Le filtre exponentiel est une combinaison pondérée de l'estimation précédente (sortie) avec les données d'entrée les plus récentes, la somme des poids égaux à 1 pour que la sortie corresponde à l'entrée à l'état stationnaire. Après la notation de filtre déjà introduite: y (k) ay (k-1) (1-a) x (k) où x (k) est l'entrée brute au temps ky (k) est la sortie filtrée au temps ka Est une constante entre 0 et 1, normalement comprise entre 0,8 et 0,99. (A-1) ou a est parfois appelée la constante de lissage 82208221. Pour des systèmes avec un intervalle de temps T fixe entre des échantillons, la constante 8220a8221 est calculée et stockée pour des raisons de commodité seulement lorsque le développeur d'application spécifie une nouvelle valeur de la constante de temps souhaitée. Pour les systèmes avec échantillonnage de données à intervalles irréguliers, la fonction exponentielle ci-dessus doit être utilisée à chaque pas de temps, où T est le temps écoulé depuis l'échantillon précédent. La sortie du filtre est généralement initialisée pour correspondre à la première entrée. Lorsque la constante de temps approche 0, a passe à zéro, donc il n'y a pas de filtrage 8211 la sortie est égale à la nouvelle entrée. Comme la constante de temps devient très grande, une approches 1, de sorte que la nouvelle entrée est presque ignorée 8211 très lourd de filtrage. L'équation de filtre ci-dessus peut être réarrangée dans l'équivalent prédicteur-correcteur suivant: Cette forme rend plus évident que l'estimation variable (sortie du filtre) est prédite comme étant inchangée par rapport à l'estimation précédente y (k-1) plus un terme de correction basé Sur l'inattendue 8220innovation8221 - la différence entre la nouvelle entrée x (k) et la prédiction y (k-1). Cette forme est également le résultat de dériver le filtre exponentiel comme un simple cas particulier d'un filtre de Kalman. Qui est la solution optimale à un problème d'estimation avec un ensemble particulier d'hypothèses. Etape réponse Une façon de visualiser le fonctionnement du filtre exponentiel est de tracer sa réponse dans le temps à une entrée pas à pas. C'est-à-dire, en commençant par l'entrée et la sortie du filtre à 0, la valeur d'entrée est soudainement changée à 1. Les valeurs résultantes sont tracées ci-dessous: Dans le graphique ci-dessus, le temps est divisé par la constante de temps tau du filtre, Les résultats pour toute période de temps, pour toute valeur de la constante de temps du filtre. Après un temps égal à la constante de temps, la sortie du filtre s'élève à 63,21 de sa valeur finale. Après un temps égal à 2 constantes de temps, la valeur s'élève à 86,47 de sa valeur finale. Les sorties après des temps égaux à 3,4 et 5 constantes de temps sont respectivement 95,02, 98,17 et 99,33 de la valeur finale. Etant donné que le filtre est linéaire, cela signifie que ces pourcentages peuvent être utilisés pour n'importe quelle grandeur du changement de pas, pas seulement pour la valeur de 1 utilisée ici. Bien que la réponse d'échelon prenne en théorie un temps infini, d'un point de vue pratique, pensez au filtre exponentiel comme 98 à 99 8220done8221 répondant après un temps égal à 4 à 5 constantes de temps de filtrage. Variations sur le filtre exponentiel Il existe une variation du filtre exponentiel appelé filtre exponentiel non linéaire, qui vise à filtrer fortement le bruit dans une certaine amplitude 8220typical8221, mais qui réagit plus rapidement à des changements plus importants. Documentation Cet exemple montre comment utiliser les filtres de moyenne mobile et le rééchantillonnage pour isoler l'effet des composantes périodiques de l'heure de la journée sur les relevés de température horaire, ainsi que pour éliminer les bruits de ligne indésirables d'une zone ouverte - Mesure de la tension d'alimentation. L'exemple montre également comment lisser les niveaux d'un signal d'horloge tout en préservant les bords en utilisant un filtre médian. L'exemple montre également comment utiliser un filtre Hampel pour supprimer des valeurs aberrantes importantes. Motivation Smoothing est la façon dont nous découvrons des modèles importants dans nos données tout en laissant de côté les choses qui sont sans importance (à savoir le bruit). Nous utilisons le filtrage pour effectuer ce lissage. L'objectif du lissage est de produire des changements de valeur lents afin que son plus facile de voir les tendances dans nos données. Parfois, lorsque vous examinez les données d'entrée, vous pouvez lisser les données afin de voir une tendance dans le signal. Dans notre exemple, nous avons un ensemble de mesures de température en Celsius prises toutes les heures à l'aéroport de Logan pour tout le mois de janvier 2011. Notez que nous pouvons visualiser l'effet que l'heure du jour a sur les relevés de température. Si vous n'êtes intéressé que par la variation quotidienne de la température au cours du mois, les fluctuations horaires ne contribuent qu'au bruit, ce qui peut rendre les variations quotidiennes difficiles à discerner. Pour supprimer l'effet de l'heure, nous aimerions maintenant lisser nos données en utilisant un filtre de moyenne mobile. Un filtre de moyenne mobile Dans sa forme la plus simple, un filtre de moyenne mobile de longueur N prend la moyenne de chaque N échantillons consécutifs de la forme d'onde. Pour appliquer un filtre de moyenne mobile à chaque point de données, nous construisons nos coefficients de notre filtre de sorte que chaque point est pondéré de façon égale et contribue 124 à la moyenne totale. Cela nous donne la température moyenne sur chaque période de 24 heures. Délai de filtrage Notez que la sortie filtrée est retardée d'environ douze heures. Ceci est dû au fait que notre filtre de moyenne mobile a un retard. Tout filtre symétrique de longueur N aura un retard de (N-1) 2 échantillons. Nous pouvons tenir compte de ce délai manuellement. Extraire les différences moyennes Nous pouvons également utiliser le filtre de la moyenne mobile pour obtenir une meilleure estimation de la façon dont l'heure du jour affecte la température globale. Pour ce faire, soustrayez d'abord les données lissées des mesures de température horaire. Ensuite, segmenter les données différenciées en jours et prendre la moyenne sur tous les 31 jours du mois. Extraction de l'enveloppe de pointe Nous aimerions parfois avoir une estimation variable de la façon dont les hauts et les bas de notre signal de température changent tous les jours. Pour ce faire, nous pouvons utiliser la fonction enveloppe pour relier les hauts et les bas extrêmes détectés sur un sous-ensemble de la période de 24 heures. Dans cet exemple, nous nous assurons qu'il ya au moins 16 heures entre chaque extrême haut et extrême bas. Nous pouvons également avoir une idée de la façon dont les hauts et les bas sont tendance en prenant la moyenne entre les deux extrêmes. Filtres moyens mobiles pondérés D'autres types de filtres à moyenne mobile ne pondent pas de façon égale chaque échantillon. Un autre filtre commun suit l'expansion binomiale de (12,12) n Ce type de filtre se rapproche d'une courbe normale pour de grandes valeurs de n. Il est utile pour filtrer le bruit à haute fréquence pour n petits. Pour trouver les coefficients pour le filtre binomial, convoluez 12 12 avec lui-même puis convertissez itérativement la sortie avec 12 12 un nombre prescrit de fois. Dans cet exemple, utilisez cinq itérations totales. Un autre filtre un peu similaire au filtre d'expansion gaussien est le filtre de moyenne mobile exponentielle. Ce type de filtre de moyenne mobile pondéré est facile à construire et ne nécessite pas une grande taille de fenêtre. Vous ajustez un filtre de moyenne mobile exponentiellement pondéré par un paramètre alpha entre zéro et un. Une valeur plus élevée de alpha aura moins de lissage. Zoom sur les lectures pour une journée. Sélectionnez votre pays


No comments:

Post a Comment