FlexPro
HistoryBase
Ingénierie
Formation
Téléchargements
Assistance FlexPro
Connaissance
Communauté
À propos de nous
Références
Emplois
Contact général
Liste des revendeurs
Assistance FlexPro
FR
DE
EN
Porte-plaquette

Documentation FlexPro 2025

Extraire des données

Outre le calcul de données et la création de structures de données, l'extraction de parties d'ensembles de données est une utilisation importante de FPScript ; par exemple, tous les maxima locaux d'un signal ou l'intervalle entre deux passages à zéro. Pour ce type d'applications, FPScript propose deux opérateurs d'indexation très puissants.

Opérateur d'index

L'opérateur d'indexation extrait des valeurs individuelles ou des plages de valeurs en utilisant leur position dans la structure de données. Toutes les lignes des séries de données et toutes les lignes et colonnes des matrices de données sont numérotées en commençant par zéro. Les indices négatifs sont comptés à partir de la fin, ce qui signifie que -1 indexe la dernière ligne ou colonne. L'opération d'indexation vous permet d'accéder à des valeurs individuelles ou à des plages à l'aide de ces chiffres.

DataSeries[99n] lit, par exemple, la centième valeur d'une série de données.

DataSeries[-2n] lit l'avant-dernière valeur de la série de données.

DataSeries[0n, 49n] crée une série de données avec les 50 premières valeurs de DataSeries.

DataSeries[49n, -1n] crée une plage allant de la 50e valeur à la dernière valeur d'une série de données.

DataSeries[{0n, 5n, 7n, 9n}] crée une série de données avec les valeurs dont les indices sont listés. Ici, l'opérateur Bundle a été utilisé pour rassembler les indices requis dans une série de données.

DataSeries[(NumberOfRows(DataSeries), NumberOfRows(DataSeries) - 1n, -1n)]

Ici, l'opérateur de série de données est utilisé pour générer les indices. L'instruction inverse l'ordre des valeurs dans la série de données.

Pour une matrice de données, spécifiez deux indices. Le premier index sélectionne une ou plusieurs colonnes et le second sélectionne une ou plusieurs lignes :

DataMatrix[1n][2n] lit, par exemple, la troisième valeur de la deuxième colonne de la matrice de données comme une valeur scalaire.

DataMatrix[-1n] lit la dernière colonne d'une matrice de données comme série de données.

DataMatrix[][2n] lit la troisième ligne d'une matrice de données comme une série de données.

Vous pouvez également utiliser un index 2D. Il s'agit d'une matrice de données comportant deux lignes et n colonnes. Chaque colonne contient l'indice de colonne et de ligne d'une valeur à extraire :

DataMatrix[{ {1, 0}, {0, 1} }] prend deux valeurs d'une matrice de données comme série de données. Correspond à { matrice de données[1][0], matrice de données[0][1] }.

 

Vous pouvez également utiliser l'opérateur d'indexation sur des chaînes de caractères pour extraire une sous-chaîne ou le code d'un seul caractère.

Chaîne[1n, 3n] prélève une sous-chaîne de trois caractères de longueur à partir du 2e caractère de la chaîne.

Chaîne de caractères[1n] extrait le code de caractère du deuxième caractère de la chaîne de caractères. L'expression renvoie un entier de 16 bits avec l'unicode du caractère.

(chaînes de caractères[2n])[1n, 3n] extrait la 3e chaîne de caractères d'une série de données de chaînes de caractères et en extrait une chaîne de caractères partielle de trois caractères de longueur à partir du 2e caractère. La parenthèse est nécessaire pour séparer l'index des données de l'index des chaînes de caractères.

Opérateur d'indice de valeur

Lorsque vous travaillez avec des signaux et des séries de signaux, il est souvent plus judicieux de spécifier directement les valeurs X et Z lors de l'indexation des sections plutôt que de travailler avec les indices. Pour ce faire, FPScript fournit l'opérateur d'indexation des valeurs.

Signal[[0 s, 4,5 s]] crée, par exemple, un signal partiel avec les points des 4,5 premières secondes.

Notez que l'opération fonctionne comme prévu même lorsque la composante X du signal a l'unité ms, par exemple.

SignalSeries[[3.5 kHz]] extrait le signal avec la valeur Z 3.5 kHz de la série de signaux.

La syntaxe de l'opérateur Index de valeur correspond à celle de l'opérateur Index. Il suffit d'inclure deux fois tous les crochets. FPScript interprète alors les indices spécifiés comme des valeurs X ou Z et les recherche dans la composante X ou Z du signal ou de la série de signaux afin d'obtenir les positions.

Opérateur d'élément de liste

Vous pouvez utiliser l'opérateur d'élément de liste pour extraire un ou plusieurs éléments d'une liste, ce qui vous permet de travailler avec les indices ou les noms des éléments de la liste.

List.[1n] fournit, par exemple, le deuxième élément de la liste.

Liste.[-2n] prélève l'avant-dernier élément d'une liste.

Liste.[1, 2] renvoie une liste partielle avec le 2ème et le 3ème élément.

List.Name prend l'élément primaire appelé "Nom" dans une liste.

List.["Current*"] renvoie tous les éléments de liste dont le nom commence par "Current".

Remarque Veuillez noter que l'accès aux éléments de la liste par leur nom n'est pas toujours univoque, car plusieurs éléments d'une liste peuvent très bien avoir le même nom.