Source de données des calculs
Lorsqu'une variable calculée lit une variable d'entrée, elle ne reçoit pas forcément tous les points : un mode de récupération détermine quelles données sont réellement transmises à la formule. Trois modes existent — Dernières valeurs, Données brutes et Agrégation — choisis dans la configuration de chaque variable d'entrée (voir Configurer une variable calculée).

Cette page détaille le fonctionnement des trois modes : Dernières valeurs, Données brutes et Agrégation.
Tant qu'il existe des points dans la dernière seconde, les deux modes renvoient la même valeur (en formule arithmétique). La différence n'apparaît que lorsque le dernier point date de plus d'une seconde :
- Dernière valeur le récupère quand même (elle prend le dernier point, quel que soit son âge).
- Donnée brute ne voit rien (elle ne regarde que la dernière seconde, ici vide).

Dernières valeurs (« last value »)
Le mode Dernières valeurs récupère uniquement le dernier point de la variable — sa valeur la plus récente — sans aucune transformation. C'est le mode à privilégier lorsque la formule n'a besoin que de la valeur courante : retransmettre une mesure, lui appliquer un coefficient, ou la comparer à un seuil.
Comment ce mode est géré :
- Un seul point est transmis à la formule : la valeur la plus récente de la variable.
- Aucune donnée : si la variable ne contient aucun point, la formule ne reçoit rien. Pensez à gérer ce cas (par exemple
if len(input.X) == 0: return 0en Python). - Garde-fou anti-futur : un point horodaté plus de 5 minutes dans le futur n'est pas considéré comme le dernier point. Cela évite qu'une donnée envoyée avec un timestamp en avance (horloge déréglée, erreur d'horodatage) soit prise à tort comme valeur courante.
Données brutes
Le mode Données brutes récupère les points bruts de la dernière seconde, sans agrégation ni rééchantillonnage. La formule reçoit les valeurs telles qu'elles ont été enregistrées sur cette fenêtre, sans transformation. C'est le mode à utiliser lorsque le calcul a besoin du détail des points récents (parcours point par point, détection d'événements, etc.).
Comment ce mode est géré :
- Fenêtre : les points retenus sont ceux de la dernière seconde.
- Aucun point sur la dernière seconde : la formule ne reçoit aucune donnée — pensez à gérer ce cas.
Pour les formules Python, vous pouvez sélectionner une période de récupération. L'input n'est alors plus limité à la dernière seconde : la formule reçoit un tableau (DataFrame) contenant tous les points de la période choisie, avec leurs colonnes timestamp et value. C'est ce qui permet de parcourir l'historique, de calculer des cumuls, des moyennes glissantes, etc. (voir Les formules Python).
Décalage (offset)
Le mode Données brutes propose en plus un décalage de la fenêtre de récupération. Vous pouvez décaler la dernière seconde d'une durée au choix — de quelques secondes à plusieurs années (secondes, minutes, heures, jours, semaines, mois, années) — dans le passé ou dans le futur.
Ce décalage permet, par exemple, de comparer la valeur courante à une valeur décalée dans le temps (la veille, la semaine précédente, etc.).
Agrégation
Le mode Agrégation récupère un point agrégé par période : au lieu de transmettre les points bruts, il les consolide via une fonction (somme, moyenne, etc.). C'est le mode à utiliser pour résumer une série en une valeur par fenêtre de temps.
Fonction d'agrégation
Choisissez comment les points sont consolidés sur chaque période :
| Fonction | Description |
|---|---|
| Somme | Addition de toutes les valeurs de la période |
| Minimum | Valeur la plus basse de la période |
| Maximum | Valeur la plus haute de la période |
| Moyenne | Moyenne arithmétique des valeurs |
| Compte | Nombre de points dans la période |
| Variance | Variance statistique des valeurs |
| Écart-type | Écart-type statistique des valeurs |
La Variance et l'Écart-type sont calculés au sens échantillon (diviseur n − 1, correction de Bessel), comme pandas par défaut — et non au sens population (diviseur n).
Période d'agrégation
La période d'agrégation définit le pas temporel sur lequel chaque agrégation est calculée. Vous choisissez :
- L'unité de temps : secondes, minutes, heures, jours, semaines, mois ou années
- Le nombre de périodes : combien d'unités de temps couvrir (par exemple 3 jours, ou 15 minutes)
La période représente l'intervalle sur lequel les données sont récupérées pour générer la variable calculée. En fonction de la granularité et de la période définies, la formule prend en compte un volume de données différent.

Dans la plateforme, vous choisissez l'unité de temps (secondes à années) et le nombre de périodes :

Remplissage des trous
Comportement quand une période n'a aucune donnée :
- Zéro : la période vide est remplie par la valeur
0 - Null : la période vide reste vide (valeur nulle)

Dans la plateforme, le mode de remplissage se choisit dans le même panneau, via la liste déroulante Null / Zéro :

