0 / 0
Retourner à la version anglaise de la documentation
Fonctionnalité clés des séries temporelles
Dernière mise à jour : 04 juil. 2024
Fonctionnalité clés des séries temporelles

La bibliothèque de séries temporelles fournit diverses fonctions sur des séries temporelles univariées, multivariées et à plusieurs clés, ainsi que des types numériques et catégoriels.

Les fonctionnalités fournies par la bibliothèque peuvent être classées en trois catégories générales :

  • E-S de série temporelle pour créer et sauvegarder des données de séries temporelles
  • Fonctions, transformations, fenêtrage ou segmentation, et réducteurs de séries temporelles
  • SQL des séries temporelles et extensions SQL à Spark pour permettre l'exécution de fonctions de série temporelle évolutives

Certaines des fonctionnalités clés sont présentées dans les sections ci-après à l'aide d'exemples.

E-S de série temporelle

La principale fonctionnalité d'entrée-sortie (E-S) d'une série temporelle est un DataFrame pandas ou une liste Python. L'exemple de code suivant illustre la construction d'une série temporelle à partir d'un DataFrame :

>>> import numpy as np
>>> import pandas as pd
>>> data = np.array([['', 'key', 'timestamp', "value"],['', "a", 1, 27], ['', "b", 3, 4], ['', "a", 5, 17], ['', "a", 3, 7], ['', "b", 2, 45]])
>>> df = pd.DataFrame(data=data[1:, 1:], index=data[1:, 0], columns=data[0, 1:]).astype(dtype={'key': 'object', 'timestamp': 'int64', 'value': 'float64'})
>>> df
key  timestamp  value
  a          1   27.0
  b          3    4.0
  a          5   17.0
  a          3    7.0
  b          2   45.0

#Create a timeseries from a dataframe, providing a timestamp and a value column
>>> ts = tspy.time_series(df, ts_column="timestamp", value_column="value")
>>> ts
TimeStamp: 1     Value: 27.0
TimeStamp: 2     Value: 45.0
TimeStamp: 3     Value: 4.0
TimeStamp: 3     Value: 7.0
TimeStamp: 5     Value: 17.0

Pour revenir d'une série temporelle à un DataFrame pandas, utilisez la fonction to_df :

>>> import tspy
>>> ts_orig = tspy.time_series([1.0, 2.0, 3.0])
>>> ts_orig
TimeStamp: 0     Value: 1
TimeStamp: 1     Value: 2
TimeStamp: 2     Value: 3

>>> df = ts_orig.to_df()
>>> df
   timestamp  value
0          0      1
1          1      2
2          2      3

Modèle de données

Les données des séries temporelles ne sont soumises à aucun standard de types de modèle et de données, contrairement à certains types de données, tels que les données spatiales, qui sont gouvernées par un standard tel qu'OGC (Open Geospatial Consortium). Avec les données de séries temporelles, le défi réside dans la grande variété de fonctions qui doivent être prises en charge, comme celles de Spark RDD (Resilient Distributed Datasets).

Le modèle de données permet une grande variété d'opérations, notamment différentes formes de segmentation ou de fenêtrage de série temporelle, des transformations ou conversions de série temporelle en une autre, des réducteurs qui calculent une valeur statique à partir d'une série temporelle, des jointures qui joignent plusieurs séries temporelles et des collecteurs de séries temporelles de différentes fuseaux horaires. La bibliothèque de séries temporelles active le plug-and-play de nouvelles fonctions sans autoriser la modification de la structure de données de base. La bibliothèque prend également en charge les séries temporelles de type numérique et catégoriel.

Avec les fuseaux horaires et les différents formats horaires lisibles par l'homme, un aspect clé du modèle de données est la prise en charge du système de référence temporel (TRS). Chaque série temporelle est associée à un système de référence temporel (TRS), qui peut être remappé à n'importe quel choix de l'utilisateur à tout moment, pour permettre une transformation facile d'une série temporelle spécifique ou d'un segment de série temporelle. Voir Utilisation du système de référence de temps.

De plus, avec la nécessité de manipuler des séries temporelles à grande échelle, la bibliothèque offre une construction d'évaluation paresseuse (lazy) en fournissant un mécanisme permettant d'identifier la dépendance temporelle étroite maximale. Cette construction est très similaire à celle d'un graphique de calcul Spark, qui charge également les données en mémoire au besoin et ne réalise les calculs que si nécessaire.

Types de données des séries temporelles

Vous pouvez utiliser plusieurs types de données comme élément d'une série temporelle, couvrant les structures de données numériques, catégorielles, de tableau et de dictionnaire.

Les types de données suivants sont pris en charge dans une série temporelle :

Type de données Descriptif
numérique Série temporelle avec des observations univariées de type numérique, notamment double et entier. Exemple : [(1, 7.2), (3, 4.5), (5, 4.5), (5, 4.6), (5, 7.1), (7, 3.9), (9, 1.1)]
tableau numérique Série temporelle avec des observations multivariées de type numérique, notamment tableau de double et tableau d'entiers. Par exemple: [(1, [7.2, 8.74]), (3, [4.5, 9.44]), (5, [4.5, 10.12]), (5, [4.6, 12.91]), (5, [7.1, 9.90]), (7, [3.9, 3.76])]
chaîne Série temporelle avec des observation univariées de type Chaîne, par exemple : [(1, "a"), (3, "b"), (5, "c"), (5, "d"), (5, "e"), (7, "f"), (9, "g")]
tableau de chaînes Série temporelle avec des observations multivariées de type Chaîne, par exemple : [(1, ["a", "xq"]), (3, ["b", "zr"]), (5, ["c", "ms"]), (5, ["d", "rt"]), (5, ["e", "wu"]), (7, ["f", "vv"]), (9, ["g", "zw"])]
segment Série temporelle de segments. La sortie de la fonction segmentBy peut être de n'importe quel type, y compris numérique, chaîne, tableau numérique et tableau de chaînes. Par exemple : [(1,[(1, 7.2), (3, 4.5)]), (5,[(5, 4.5), (5, 4.6), (5, 7.1)]), (7,[(7, 3.9), (9, 1.1)])]
dictionnaire Série temporelle de dictionnaires. Un dictionnaire peut contenir des types arbitraires

Fonctions de série temporelle

Vous pouvez utiliser différentes fonctions dans les packages de séries temporelles fournis pour analyser les données de série temporelle afin d'extraire des informations significatives permettant de créer des modèles qui peuvent être utilisés pour prédire les nouvelles valeurs en fonction des valeurs précédemment observées. Voir Fonctions de série temporelle.

En savoir plus

Pour utiliser le kit SDK tspy Python, voir la documentation du kit SDK tspy Python.

Rubrique parent: Analyse des séries temporelles

Recherche et réponse à l'IA générative
Ces réponses sont générées par un modèle de langue de grande taille dans watsonx.ai en fonction du contenu de la documentation du produit. En savoir plus