TimeFilter (FPScript)

10.10.2019

TimeFilter (FPScript)

Durchsucht einen Datensatz mit Kalenderzeitwerten nach periodischen Zeitausschnitten.

Syntax

TimeFilter(DataSet, Criterion, LowerBound, UpperBound [ , Operation = EVENT_DEFAULT ])

 

Die Syntax der TimeFilter-Funktion besteht aus folgenden Teilen:

Teil

Beschreibung

DataSet

Der Datensatz mit Kalenderzeitwerten, für den eine Zeitfilterung durchgeführt werden soll.

Erlaubte Datenstrukturen sind Datenreihe, Datenmatrix, Signal, Signalreihe und Signalreihe mit zweidimensionaler X-Komponente. 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.

Criterion

Gibt an, welches Datumselement der Filterung zugrunde gelegt werden soll.

Das Argument Criterion kann folgende Werte haben:

Konstante

Bedeutung

SECOND

Sekunde in der Minute (0.0 bis 59.9999)

MINUTE

Minute in der Stunde (0.0 bis 59.9999)

HOUR

Stunde des Tages (0.0 bis 23.9999)

DAY

Tag des Monats (1 bis 31)

WEEKDAY

Wochentag (0 für Sonntag bis 6 für Samstag, statt Zahlenwerten können Sie auch die Konstanten SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY und SATURDAY verwenden)

MONTH

Monat des Jahres (1 bis 12)

YEAR

Jahr (1970 bis 3000)

DAYOFYEAR

Jahrestag (1 bis 366)

Ist das Argument eine Liste, dann wird deren erstes Element entnommen. Ist dies wieder eine Liste, dann wird der Vorgang wiederholt.

LowerBound

Gibt die Untergrenze des Zeitausschnittes an. Wenn Sie einen Wert mit Einheit angeben, muss diese zum gewählten Datumselement passen.

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

Ist das Argument eine Liste, dann wird deren erstes Element entnommen. Ist dies wieder eine Liste, dann wird der Vorgang wiederholt.

UpperBound

Gibt die Obergrenze des Zeitausschnittes an. Wenn Sie einen Wert mit Einheit angeben, muss diese zum gewählten Datumselement passen.

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

Ist das Argument eine Liste, dann wird deren erstes Element entnommen. Ist dies wieder eine Liste, dann wird der Vorgang wiederholt.

Operation

Legt die Arbeitsweise der Funktion fest.

Das Argument Operation kann folgende Werte haben:

Konstante

Bedeutung

EVENT_INDEX

Im Ergebnis-Datensatz werden die Indizes der Werte bzw. Punkte abgelegt, die der Bedingung entsprechen.

EVENT_EXTRACT

Nur die Punkte bzw. Werte, die der Bedingung entsprechen, werden in den Ergebnis-Datensatz übertragen.

EVENT_SETVOID

Punkte bzw. Werte, die der Bedingung nicht entsprechen, werden zwar mit in den Ergebnis-Datensatz übernommen, dort aber ungültig markiert.

EVENT_DEFAULT

Entspricht EVENT_SETVOID, wenn eine Datematrix oder Signalreihe vorliegt, und ansonsten EVENT_INDEX.

+ EVENT_COMPLEMENT

Diese Konstante kann optional hinzu addiert werden und kehrt dann die gewählte Operation um. Es werden dann z. B. bei EVENT_EXTRACT die Punkte übernommen, die der Bedingung nicht entsprechen.

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

 

Anmerkungen

Das Ergebnis ist immer vom Datentyp Kalenderzeit.

Bei Signalen und Signalreihen wird die X-Komponente durchsucht. Für die Datumselemente SECOND, MINUTE und HOUR können Sie die Intervallgrenzen als Fließkommazahl angeben.

Verfügbarkeit

FlexPro Standard, Professional, Developer Suite

Beispiele

TimeFilter(TimeSignal, SECOND, 3.5, 12.3)

Liefert die Indizes der Werte des Signals 'TimeSignal' zurück, die im Intervall [3.5, 12.3] Sekunden in jeder Minute liegen.

TimeFilter(TimeSignal, SECOND, 200 ms, 600 ms)

Liefert die Indizes der Werte des Signals 'TimeSignal' zurück, die im Intervall [0.2, 0.6] Sekunden in jeder Minute liegen.

TimeFilter(SignalSeries, WEEKDAY, MONDAY, FRIDAY, EVENT_SETVOID)

Liefert die Signalreihe, bei der alle Y-Werte, die auf ein Wochenende fallen, ungültig gesetzt wurden.

IndexAnd(TimeFilter(TimeSignal, WEEKDAY, MONDAY, FRIDAY), TimeFilter(TimeSignal, HOUR, 9.0, 17.5))

Liefert die Indizes der Werte des Signals 'TimeSignal' zurück, auf einen Werktag fallen und im Bereich von 9:00 bis 17:30 Uhr liegen.

 

Siehe auch

Analyseobjekt Zeitfilter

Artikel teilen oder als Email versenden:

Diese Beiträge könnten Sie ebenfalls interessieren