La décomposition de Loess a pour but de lisser la série en appliquant des moyennes aux données afin qu'elles s'effondrent en composantes, par exemple la tendance ou saisonnières, qui sont intéressantes pour l'analyse des données. Mais cette méthodologie n'est pas destinée à faire un test formel de la présence de saisonnalité .
Bien que dans votre exemple stl
renvoie un modèle lissé de périodicité saisonnière, ce modèle n'est pas pertinent pour expliquer la dynamique de la série. Pour voir cela, nous pouvons comparer la variance de chaque composante par rapport à la variance de la série d'origine.
set.seed(123)
x <- ts(rnorm(144, sd=1), frequency=12)
a <- stl(x, s.window="periodic")
apply(a$time.series, 2, var) / var(x)
# seasonal trend remainder
# 0.07080362 0.07487838 0.81647852
Nous pouvons voir que c'est le reste qui explique la majeure partie de la variance des données (comme on pourrait s'y attendre pour un processus de bruit blanc).
Si nous prenons une série avec saisonnalité, la variance relative de la composante saisonnière est beaucoup plus pertinente (bien que nous n'ayons pas de méthode simple pour la tester car le loess n'est pas paramétrique).
y <- diff(log(AirPassengers))
b <- stl(y, s.window="periodic")
apply(b$time.series, 2, var) / var(y)
# seasonal trend remainder
# 0.875463620 0.001959407 0.117832537
Les variances relatives indiquent que la saisonnalité est la principale composante expliquant la dynamique de la série.
Un regard imprudent sur l'intrigue stl
peut être trompeur. Le beau modèle renvoyé par stl
peut nous faire penser qu'un modèle saisonnier pertinent peut être identifié dans les données, mais un examen plus approfondi peut révéler que ce n'est pas réellement le cas. Si le but est de décider de la présence d'une saisonnalité, la décomposition du loess peut être utile comme vue préliminaire, mais elle doit être complétée par d'autres outils.