DeltaCompress (FPScript)
Vermindert die Werteanzahl eines Datensatzes durch Deltakompression.
Syntax
DeltaCompress(DataSet, DeltaY, [ Predecessors = 0 ] [ , Operation = EVENT_EXTRACT ])
Die Syntax der DeltaCompress-Funktion besteht aus folgenden Teilen:
Teil |
Beschreibung |
||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
DataSet |
Der zu komprimierende Datensatz. Erlaubte Datenstrukturen sind Datenreihe, Datenmatrix, Signal und Signalreihe. Es sind alle numerischen Datentypen erlaubt. Bei komplexen Datentypen erfolgt eine Betragsbildung. Ist das Argument eine Liste, dann wird die Funktion für jedes Element der Liste ausgeführt und das Ergebnis ist ebenfalls eine Liste. |
||||||||||||
DeltaY |
Gibt das Y-Intervall an, um das die Amplitude mindestens steigen bzw. fallen muss, damit ein Wert übernommen wird. Erlaubte Datenstrukturen sind Einzelwert. Es sind alle numerischen Datentypen erlaubt. Die Einheit muss mit der von Parameter DataSet kompatibel sein. Ist das Argument eine Liste, dann wird deren erstes Element entnommen. Ist dies wieder eine Liste, dann wird der Vorgang wiederholt. |
||||||||||||
Predecessors |
Gibt die Anzahl der Vorgänger an, die für jeden akzeptierten Wert mit übernommen werden sollen. Verbessert die Abbildung von Flanken im komprimierten Datensatz. Erlaubte Datenstrukturen sind Einzelwert. Es sind alle numerischen Datentypen erlaubt. Ist das Argument eine Liste, dann wird deren erstes Element entnommen. Ist dies wieder eine Liste, dann wird der Vorgang wiederholt. Wenn das Argument nicht angegeben wird, wird es auf den Vorgabewert 0 gesetzt. |
||||||||||||
Operation |
Legt die Arbeitsweise der Funktion fest. Das Argument Operation kann folgende Werte haben:
Ist das Argument eine Liste, dann wird deren erstes Element entnommen. Ist dies wieder eine Liste, dann wird der Vorgang wiederholt. Wenn das Argument nicht angegeben wird, wird es auf den Vorgabewert EVENT_EXTRACT gesetzt. |
Anmerkungen
Die Deltakompression reduziert die Daten eines Datensatzes durch Entfernen aller Werte, deren Betrag der Abweichung vom Vorgängerwert kleiner als ein vorgegebener Schwellenwert ist. Für Signale, die über weite Strecken einen konstanten Wert aufweisen, kann dies zu einer erheblichen Datenreduktion ohne großen Informationsverlust führen. Der Algorithmus verwendet zunächst den ersten Wert in DataSet, der kein ungültiger Fließkommawert ist, als ersten Stützpunkt des komprimierten Datensatzes. Für nachfolgende Werte wird der Betrag der Differenz mit dem angegebenen DeltaY verglichen. Ist diese größer als DeltaY, dann ist dieser Wert der nächste Referenzwert und er selbst und die angegebene Anzahl von Vorgängerwerten werden Bestandteil des komprimierten Datensatzes.
Verfügbarkeit
FlexPro Basic, Professional, Developer Suite
Beispiele
DeltaCompress({3, 5, 4, 2, 7, 6, 8, 1}, 1.5) |
Ergibt {3, 5, 2, 7, 1}. |
DeltaCompress({3, 5, 4, 2, 7, 6, 8, 1}, 1.5, 1) |
Ergibt {3, 5, 4, 2, 7, 8, 1}. |