Recherche dans un ensemble de données avec des valeurs de temps calendaire pour la valeur suivante qui se trouve dans un segment de temps périodique.
Syntaxe
NextTimePeriod(DataSet, le Criterion, le [ Position ], le LowerBound, le UpperBound [ , le Direction Variable EVENT_RIGHT ])
La syntaxe de la fonction NextTimePeriod se compose des éléments suivants :
Section |
Description |
||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
DataSet |
L'ensemble de données avec les valeurs de temps calendaire dans lequel on recherche des périodes. Les structures de données autorisées sont Série de données, le Signal et Série de signaux. Tous les types de données numériques sont autorisés. Si l'argument est une liste, alors la fonction est exécutée pour chaque élément de la liste et le résultat est également une liste. |
||||||||||||||||||
Criterion |
Précise sur quel élément de date la recherche doit être basée. L'argument Criterion peut avoir les valeurs suivantes :
Si l'argument est une liste, alors son premier élément est pris. S'il s'agit à nouveau d'une liste, le processus est répété. |
||||||||||||||||||
Position |
Si vous recherchez dans un signal, il s'agit de la valeur X où la recherche doit commencer. La valeur elle-même n'est pas incluse dans la recherche. Si vous recherchez une série de données, il s'agit de l'index de la valeur où la recherche doit commencer. L'index lui-même n'est pas inclus dans la recherche. Un indice négatif détermine une position relative à la fin de l'ensemble de données. Si vous omettez l'argument ou passez la valeur Empty, la recherche commence au début ou à la fin de l'ensemble de données, selon le sens de la recherche. La première ou la dernière valeur de l'ensemble de données n'est prise en compte que si vous omettez l'argument ou passez la valeur Empty. Les structures de données autorisées sont Scalaire. Tous les types de données numériques sont autorisés. L'unité doit être compatible avec celle du paramètre DataSet . Pour les types de données complexes, un nombre est formé. Si l'argument est une liste, alors la fonction est exécutée pour chaque élément de la liste et le résultat est également une liste. |
||||||||||||||||||
LowerBound |
Indique la limite inférieure de l'intervalle de temps. Si vous indiquez une valeur avec une unité, celle-ci doit correspondre à la date de remplacement sélectionnée. Les structures de données autorisées sont Scalaire. Tous les types de données réels sont autorisés. Si l'argument est une liste, alors la fonction est exécutée pour chaque élément de la liste et le résultat est également une liste. |
||||||||||||||||||
UpperBound |
Indique la limite supérieure de l'intervalle de temps. Si vous indiquez une valeur avec une unité, celle-ci doit correspondre à la date de remplacement sélectionnée. Les structures de données autorisées sont Scalaire. Tous les types de données réels sont autorisés. Si l'argument est une liste, alors la fonction est exécutée pour chaque élément de la liste et le résultat est également une liste. |
||||||||||||||||||
Direction |
Définit la direction de recherche de la fonction. L'argument Direction peut avoir les valeurs suivantes :
Si l'argument est une liste, alors son premier élément est pris. S'il s'agit à nouveau d'une liste, le processus est répété. Si l'argument n'est pas spécifié, il est défini à la valeur par défaut EVENT_RIGHT . |
Remarques
Le résultat est toujours du type de données Temps calendaire.
Dans le cas des signaux et des séries de signaux, la composante X est recherchée.
Dans le cas où LowerBound est inférieur ou égal à UpperBound une valeur est dans l'intervalle si elle est supérieure ou égale à LowerBoundet inférieure ou égale à UpperBound est égal à . Si devient LowerBound est supérieure à UpperBound une valeur est comprise dans l'intervalle si elle est supérieure ou égale à LowerBoundou inférieure ou égale à UpperBound est supérieur ou égal à l'intervalle. Cela équivaut approximativement à un complément.
Pour les dates de remplacement SECOND, MINUTE et HOUR vous pouvez indiquer les limites d'intervalle sous forme de nombre à virgule flottante.
Disponible dans
FlexPro Basic, Professional, Developer Suite
Exemples
NextTimePeriod(TimeSignal, SECOND, , 3.5, 12.3) |
Renvoie l'indice de la première valeur du signal "TimeSignal", qui se situe dans l'intervalle [3,5, 12,3] secondes de chaque minute. |
TimeSignal[[NextTimePeriod(TimeSignal, SECOND, 5.5 s, 200 ms, 600 ms, EVENT_LEFT)]] |
Recherche dans le signal "TimeSignal" à partir de la position X = 5,5 s à gauche la valeur suivante qui se trouve dans l'intervalle [0,2, 0,6] secondes de chaque minute. Le résultat est la valeur Y de la position trouvée. |