timeFilters

expectedRange

Beschreibung

Berechnet den Bereich und den gleitenden relativen Bereich für jede Zeitreihenbeobachtung in den Eingabedaten. Diese Aktion dient dazu, Schwankungen und Trends in der Volatilität von Zeitreihen über definierte Zeitfenster hinweg zu analysieren.

Einstellungen
ParameterBeschreibung
casOutGibt die Ausgabetabelle für die berechneten erwarteten Bereichswerte an.
dttmNameGibt den Namen der Variablen an, die den Zeitstempel (Datum/Uhrzeit) für die Zeitreihe enthält.
expectedRangeWindowLengthGibt die Fensterlänge (Anzahl der Beobachtungen) für die Berechnung des erwarteten Bereichs an. Der Mindestwert beträgt 1.
rangeWindowLengthGibt die Fensterlänge (Anzahl der Beobachtungen) für die Berechnung des tatsächlichen Bereichs an. Der Mindestwert beträgt 1.
timeSeriesTableGibt die Eingabe-Zeitreihentabelle an, die die zu analysierenden Daten enthält.
xVarNamesGibt eine oder mehrere unabhängige Variablen (Analysevariablen) an, für die der Bereich berechnet werden soll.
Erstellung von Beispiel-Zeitreihendaten

Erzeugt eine Tabelle 'TSDATA' in der Bibliothek 'mycas' mit einer Datumsspalte und einer Wertespalte, die sinusförmige Daten mit Rauschen enthält.

Kopiert!
1DATA mycas.tsdata;
2 FORMAT date date9.;
3 DO i = 1 to 365;
4 date = intnx('day', '01JAN2023'd, i);
5 value = 10 + sin(i/10) + rannor(123);
6 OUTPUT;
7 END;
8 drop i;
9RUN;

Beispiele

Führt die Aktion 'expectedRange' auf der Tabelle 'tsdata' aus. Dabei wird der Bereich über ein Fenster von 5 Beobachtungen und der erwartete Bereich über 20 Beobachtungen berechnet.

SAS® / CAS-Code Code wartet auf Validierung durch die Community
Kopiert!
1PROC CAS;
2 timeFilters.expectedRange /
3 timeSeriesTable={name="tsdata"},
4 dttmName="date",
5 xVarNames={"value"},
6 rangeWindowLength=5,
7 expectedRangeWindowLength=20,
8 casOut={name="range_output", replace=true};
9RUN;
Ergebnis :
Erstellt eine Ausgabetabelle 'range_output' mit den berechneten Bereichsmetriken für die Variable 'value'.

Analysiert die Zeitreihen, wobei die Daten nach einer hypothetischen Variable 'Category' gruppiert werden (hier als Platzhalter in der Syntax gezeigt) und nur Daten ab einem bestimmten Datum berücksichtigt werden.

SAS® / CAS-Code Code wartet auf Validierung durch die Community
Kopiert!
1PROC CAS;
2 timeFilters.expectedRange /
3 timeSeriesTable={
4 name="tsdata",
5 where="date >= '01JUN2023'd",
6 groupBy={{
7 name="Category" /* Angenommen, diese Spalte existiert */
8 }}
9 },
10 dttmName="date",
11 xVarNames={"value"},
12 rangeWindowLength=7,
13 expectedRangeWindowLength=30,
14 casOut={
15 name="detailed_range_output",
16 caslib="casuser",
17 replace=true,
18 label="Detaillierte Bereichsanalyse"
19 };
20RUN;
Ergebnis :
Generiert die Tabelle 'detailed_range_output' in der Bibliothek 'casuser'. Die Berechnung erfolgt nur für Datensätze ab dem 1. Juni 2023 und berücksichtigt Gruppierungen.

FAQ

Was ist der Hauptzweck der Aktion expectedRange?
Welche Parameter sind für die Ausführung der Aktion zwingend erforderlich?
Welche Funktion hat der Parameter 'expectedRangeWindowLength'?
Wie wird die Eingabetabelle für die Zeitreihenanalyse definiert?
Wozu dient der Parameter 'xVarNames'?
Wie können die Ergebnisse der Aktion gespeichert werden?