Vermindert die Werteanzahl eines Datensatzes durch blockweise Operationen oder zerlegt diesen in eine Liste von Segmenten.
Syntax
BlockCompress(DataSet, XInterval, [ Output = BC_OUTPUT_MEAN ] [ , Options = BC_OPTION_RESIDUAL ])
Die Syntax der BlockCompress-Funktion besteht aus folgenden Teilen:
Teil |
Beschreibung |
||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
DataSet |
Der zu komprimierende Datensatz. Erlaubte Datenstrukturen sind Signal. Es sind alle numerischen Datentypen erlaubt. Für die X-Komponente gelten zusätzliche Beschränkungen.Die Werte müssen monoton wachsend sein. 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. |
||||||||||||||||||||||
XInterval |
Gibt die Blockgröße als X-Intervall in der Einheit der X-Komponente von DataSet an. Erlaubte Datenstrukturen sind Einzelwert. Es sind alle reellen Datentypen erlaubt. Der Wert muss größer 0 sein. Ungültige Werte sind in diesem Argument nicht zulässig. Ist das Argument eine Liste, dann wird die Funktion für jedes Element der Liste ausgeführt und das Ergebnis ist ebenfalls eine Liste. |
||||||||||||||||||||||
Output |
Gibt an, welche Ergebnisse ausgegeben werden sollen. Wenn Sie mehrere Ergebnisse wählen, erfolgt die Ausgabe als Liste. Das Argument Output kann folgende Werte haben:
Wenn das Argument nicht angegeben wird, wird es auf den Vorgabewert BC_OUTPUT_MEAN gesetzt. |
||||||||||||||||||||||
Options |
Wählt Optionen für den Algorithmus. Das Argument Options kann folgende Werte haben:
Wenn das Argument nicht angegeben wird, wird es auf den Vorgabewert BC_OPTION_RESIDUAL gesetzt. |
Anmerkungen
Die Blockkompression reduziert die Daten eines Datensatzes durch blockweise Bildung eines Ergebniswertes pro Block. Es werden nur Datenpunkte in DataSet verarbeitet, deren Y- und X-Komponente gültig ist. Die Blockgröße wird hierbei als X-Intervall in einer zur Einheit der X-Komponente von DataSet kompatiblen Einheit angegeben. Ein X-Wert, der genau auf einer Blockgrenze liegt, wird dem jeweils nächsten Block zugerechnet. Die Werte in DataSet müssen nicht äquidistant abgetastet sein. Enthält ein Block keine Werte, wird der Wert des vorigen Blocks nochmals ausgegeben. Das Ergebnis ist ein Signal mit einem Wert pro Block. In die X-Komponente des Ergebnisses wird der jeweils erste X-Wert im Block übernommen.
Verfügbarkeit
FlexPro Basic, Professional, Developer Suite
Beispiele
BlockCompress(DataSet, 5 min) |
Liefert die 5 Minuten Mittelwerte von DataSet. |
BlockCompress(DataSet, 5 min, BC_OUTPUT_FIRSTVAL) |
Reduziert die Daten von DataSet auf einen Wert pro 5 Minuten. |
Signal(ListToSeries(Quantile(BlockCompress(DataSet, 5 min, BC_OUTPUT_LIST), 0.5)), BlockCompress(DataSet, 5, BC_OUTPUT_FIRSTVAL).X) |
Reduziert die Daten von DataSet auf einen Medianwert pro 5 Minuten. ListToSeries(Quantile(BlockCompress(DataSet, 5 min, BC_OUTPUT_LIST), 0.5)) zerlegt die Daten in eine Liste mit Abschnitten, berechnet für jeden Abschnitt den Median und wandelt die Liste mit Einzelwerten in eine Datenreihe um. BlockCompress(DataSet, 5, BC_OUTPUT_FIRSTVAL).X liefert die ersten X-Werte der Abschnitte als Datenreihe. Mit der Funktion Signal werden die Y- und X-Datenreihen zu einem Signal zusammengefasst. |