IndexSegments (FPScript)

21.09.2021

Sucht nach Segmentanfängen und/oder -enden in einer Indexdatenreihe.

Syntax

IndexSegments(Index, [ Orientation = SEGMENT_BOTH ] [ , MinSize = 2 ])

 

Die Syntax der IndexSegments-Funktion besteht aus folgenden Teilen:

Teil

Beschreibung

Index

Eine Datenreihe mit aufsteigenden Indizes.

Erlaubte Datenstrukturen sind Datenreihe. Es sind alle reellen Datentypen erlaubt.

Ist das Argument eine Liste, dann wird die Funktion für jedes Element der Liste ausgeführt und das Ergebnis ist ebenfalls eine Liste.

Orientation

Gibt an, ob nach Segment-Anfängen, Segment-Enden oder beidem gesucht werden soll.

Das Argument Orientation kann folgende Werte haben:

Konstante

Bedeutung

SEGMENT_BEGINNINGS

Nur nach Segmentanfängen suchen.

SEGMENT_ENDS

Nur nach Segmentenden suchen.

SEGMENT_BOTH

Nach Segmentanfängen und -enden suchen.

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 SEGMENT_BOTH gesetzt.

MinSize

Gibt die minimale Segmentgröße an.

Erlaubte Datenstrukturen sind Einzelwert. Es sind alle reellen Datentypen erlaubt.

Der Wert muss größer gleich 1 sein.

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 2 gesetzt.

Anmerkungen

Ein Segment ist ein lückenlos aufsteigende Folge von Indizes. Ein Index ist ein Segmentanfang, wenn er keinen lückenlos anschließenden Vorgänger hat. Ein Index ist ein Segmentende, wenn er keinen lückenlos anschließenden Nachfolger hat. Es werden nur Segmente mit der mit dem Argument MinSize angegebenen Mindestanzahl von Indizes ausgegeben.

Wenn MinSize gleich 1 ist, dann werden vereinzelte Indizes ebenfalls ausgegeben. Diese werden jedoch nur einmal ausgegeben, obwohl diese dann einen Segmentanfang und ein Segmentende darstellen.

Verfügbarkeit

FlexPro Basic, Professional, Developer Suite

Beispiele

IndexSegments({5, 6, 7, 10, 15, 16})

Ergibt {5L, 7L, 15L, 16L}. Bitte beachten Sie, dass die 10 nicht ausgegeben wird, weil die Mindestsegmentgröße 2 ist.

IndexSegments({5, 6, 7, 10, 15, 16}, SEGMENT_BOTH, 1)

Ergibt {5L, 7L, 10L, 15L, 16L}. In diesem Fall wird die 10 ausgegeben, aber nur einmal.

ExtractSegments(Signal, IdxSegments(ValuesAboveLevel(Signal, 2)))

Liefert eine Liste mit den Signalabschnitten, die über dem Pegel von 2 liegen.

Siehe auch

ExtractSegments-Funktion

IndexOr-Funktion

IndexAnd-Funktion

IndexNot-Funktion

IndexBefore-Funktion

IndexAfter-Funktion

IndexSort-Funktion

Analyseobjekt Ereignisisolation

Artikel teilen oder als Email versenden:

Diese Beiträge könnten Sie ebenfalls interessieren