Désaisonnalisation des données avec une analyse de Fourier

8

J'ai des données qui ont deux comportements sous-jacents. Il y a d'abord une périodicité. Cela ressemble à une courbe sinusoïdale. Deuxièmement, les points de données connaissent une croissance constante. Donc, si j'ai 100 points de données sans croissance, cela ressemblera à une courbe sinusoïdale. Mais en raison du taux de croissance en elle. il y a une augmentation de grandeur allant du point 1 au point 100.

Je ne sais pas quel est le bon terme à rechercher dans google. Existe-t-il une méthode pour ce type d'analyse de données?

user1243255
la source
Similaire à stats.stackexchange.com/a/213455/17230 ? Régression harmonique, ou régression avec des termes de Fourier, je pense. L'idée peut être utilisée dans différents types de modèles de séries chronologiques.
Scortchi - Réintégrer Monica
pouvez-vous poster un complot? plus de contexte?
Matthew Gunn

Réponses:

5

Le terme que vous recherchez est "décomposition des tendances et de la saisonnalité des séries chronologiques". Google cela.

Il existe de nombreuses approches. Si vous n'avez vraiment que 100 points, Fourier ne fonctionnera pas très bien. Les approches basées sur Yule-Walker peuvent mieux fonctionner. Il existe également des approches basées sur les filtres. Par exemple, les filtres passe-bande de Google tels que bpassm d'Atlanta Fed. L'idée est de filtrer les différentes composantes de fréquence de la série, de sorte que la basse fréquence soit la tendance, la fréquence moyenne du signal et la haute fréquence - la saisonnalité, etc.

Il y a un ensemble complet de code dans cet exemple matlab . Cela vous guide pas à pas dans le processus de désaisonnement, cela fonctionne assez bien pour les données économiques selon mon expérience

Aksakal
la source
1
J'adore cet exemple. C'est ce que je cherchais.
user1243255
6

Les modèles auto-régressifs classiques peuvent gérer les cycles! En remontant le temps, Yule (1927) et Walker (1931) ont modélisé la périodicité des taches solaires en utilisant une équation de la forme:

yt+1=a+b1yt+b2yt1+ϵt+1

L'activité des taches solaires a tendance à fonctionner sur des cycles de 11 ans, et bien que ce ne soit pas immédiatement évident, l'inclusion de deux termes autorégressifs peut créer un comportement cyclique! Les modèles autorégressifs sont désormais omniprésents dans l'analyse moderne des séries chronologiques. Le US Census Bureau utilise un modèle ARIMA pour calculer la désaisonnalisation.

Plus généralement, vous pouvez adapter un modèle ARIMA qui implique:

  • p commander des termes auto-régressifs (comme ci-dessus)
  • q ordre des termes à moyenne mobile
  • d différences (pour obtenir les données stationnaires)

Si vous plongez dans les mathématiques , il existe une relation entre les modèles ARIMA et les représentations dans le domaine fréquentiel avec une transformée de Fourier. Vous pouvez représenter un processus de série chronologique stationnaire à l'aide d'un modèle auto-régressif, d'un modèle à moyenne mobile ou de la densité spectrale.

Voie pratique à suivre:

  1. Vous devez d'abord obtenir une série chronologique stationnaire . Par exemple, avec le produit intérieur brut ou la consommation agrégée, les gens prennent généralement le logarithme et calculent la première différence. (L'idée de base est que la distribution par rapport aux variations en pourcentage de la consommation globale est invariante dans le temps.) Pour obtenir une série chronologique stationnaireΔct de la consommation globale Ct.

Δct=JournalCt-JournalCt-1
  1. Une fois que vous avez une série chronologique stationnaire, il est facile de monter un modèle AR (n) auto-régressif. Vous pouvez simplement faire des moindres carrés. Pour un modèle AR (2), vous pouvez exécuter la régression.

yt=une+b1yt-!+b2yt-2+ϵt

Bien sûr, vous pouvez obtenir plus de fantaisie, mais souvent des choses simples peuvent fonctionner étonnamment bien. Il existe des packages bien développés pour l'analyse des séries temporelles dans R, EViews, Stata, etc ...

Matthew Gunn
la source
3

Si vos données sont une série chronologique, vous voudrez peut-être examiner le lissage exponentiel triple, également connu sous le nom de méthode Holt-Winters. Cela peut s'adapter à la saisonnalité additive (où l'amplitude saisonnière ne croît pas avec la tendance à la hausse au fil du temps) et à la saisonnalité multiplicative. Voici la différence:

saisonnalité additive vs multiplicative

Cette section de manuel de prévision en ligne gratuit de Hyndman & Athanasopoulos explique Holt-Winters. Voici toute la taxonomie des méthodes de lissage exponentiel, basée sur Gardner (2006, International Journal of Forecasting ) . Pour modéliser en fait une telle série, la tendance de l' extrait, les composants saisonniers et d' erreur et de prévision, je recommande la ets()fonction dans le forecastpackage R .

Stephan Kolassa
la source