series_decompose_forecast()

Sagt Werte basierend auf der Zerlegung der Reihe vorher.

Nimmt einen Ausdruck, der eine Reihe (dynamisches numerisches Array) als Eingabe enthält, und sagt die Werte der letzten nachfolgenden Punkte voraus. Weitere Informationen finden Sie unter series_decompose.

Syntax

series_decompose_forecast(Serie,Punkte, [ Saisonalität,Trend,Seasonality_threshold ])

Erfahren Sie mehr über Syntaxkonventionen.

Parameter

Name Typ Erforderlich BESCHREIBUNG
Reihen dynamic ✔️ Ein Array numerischer Werte, in der Regel die resultierende Ausgabe von Make-Series- oder make_list-Operatoren .
Points int ✔️ Gibt die Anzahl der Punkte am Ende der Reihe an, die vorhergesagt oder vorhergesagt werden sollen. Diese Punkte sind vom Lern- oder Regressionsprozess ausgeschlossen.
Saisonalität int Steuert die saisonale Analyse. Mögliche Werte:

- -1: Automatische Erkennung der Saisonalität mithilfe von series_periods_detect. Dies ist der Standardwert.
- Punkt: Eine positive ganze Zahl, die den erwarteten Zeitraum in der Anzahl der Bins angibt. Wenn sich die Reihe z. B. in 1 - h Bins befindet, beträgt ein wöchentlicher Zeitraum 168 Behälter.
- 0: Keine Saisonalität, daher überspringen Sie das Extrahieren dieser Komponente.
Trend string Steuert die Trendanalyse. Mögliche Werte:

- avg: Definieren Sie die Trendkomponente als average(x). Dies ist die Standardoption.
- linefit: Extrahieren Sie die Trendkomponente mithilfe der linearen Regression.
- none: Kein Trend, daher überspringen Sie die Extraktion dieser Komponente.
Seasonality_threshold real Der Schwellenwert für die Saisonalitätsbewertung, wenn Saisonalität auf autodetect festgelegt ist. Der Schwellenwert für die Standardbewertung ist 0,6.

Weitere Informationen finden Sie unter series_periods_detect.

Gibt zurück

Ein dynamisches Array mit der prognostizierten Reihe.

Hinweis

  • Das dynamische Array der ursprünglichen Eingabereihe sollte eine Anzahl von zu prognostizierten Punktslots enthalten. Die Prognose erfolgt in der Regel mithilfe von Make-Series und Angabe der Endzeit in dem Bereich, der den Zeitrahmen für die Prognose enthält.
  • Die Saisonalität oder der Trend sollte aktiviert werden, andernfalls ist die Funktion redundant und gibt nur eine Mit Nullen gefüllte Reihe zurück.

Beispiel

Im folgenden Beispiel generieren wir eine Serie von vier Wochen in einem Stündchen mit wöchentlicher Saisonalität und einem kleinen Aufwärtstrend. Anschließend verwenden make-series und fügen wir der Serie eine weitere leere Woche hinzu. series_decompose_forecast wird mit einer Woche (24* 7 Punkte) aufgerufen und erkennt automatisch die Saisonalität und den Trend und generiert eine Prognose für den gesamten Fünf-Wochen-Zeitraum.

let ts=range t from 1 to 24*7*4 step 1 // generate 4 weeks of hourly data
| extend Timestamp = datetime(2018-03-01 05:00) + 1h * t 
| extend y = 2*rand() + iff((t/24)%7>=5, 5.0, 15.0) - (((t%24)/10)*((t%24)/10)) + t/72.0 // generate a series with weekly seasonality and ongoing trend
| extend y=iff(t==150 or t==200 or t==780, y-8.0, y) // add some dip outliers
| extend y=iff(t==300 or t==400 or t==600, y+8.0, y) // add some spike outliers
| make-series y=max(y) on Timestamp from datetime(2018-03-01 05:00) to datetime(2018-03-01 05:00)+24*7*5h step 1h; // create a time series of 5 weeks (last week is empty)
ts 
| extend y_forcasted = series_decompose_forecast(y, 24*7)  // forecast a week forward
| render timechart 

Die Vorhersage der Serie wird zerlegt.