series_decompose_forecast()
Gilt für: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Sagt Werte basierend auf der Zerlegung der Reihe vorher.
Verwendet einen Ausdruck, der eine Datenreihe (dynamische numerische Matrix) als Eingabe enthält, und prognostiziert die Werte der letzten nachgestellten Punkte. Weitere Informationen finden Sie unter series_decompose.
Syntax
series_decompose_forecast(
Reihenpunkte,
,
[ Saisonalitätstrend,
,
Seasonality_threshold ])
Erfahren Sie mehr über Syntaxkonventionen.
Parameter
Name | Type | 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 Datenreihe an, die vorhergesagt oder vorhergesagt werden sollen. Diese Punkte werden vom Lern- oder Regressionsprozess ausgeschlossen. |
Saisonalität | int |
Steuert die saisonale Analyse. Mögliche Werte sind: - -1 : Autodet die 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 Datenreihe beispielsweise in 1 - h Fächern befindet, beträgt eine wöchentliche Periode 168 Bins.- 0 : Keine Saisonalität, also überspringen Sie das Extrahieren dieser Komponente. |
|
Trend | string |
Steuert die Trendanalyse. Mögliche Werte sind: - avg : Definieren der Trendkomponente als average(x) . Dies ist die Standardeinstellung.- linefit : Extrahieren Der Trendkomponente mithilfe der linearen Regression.- none : Kein Trend, also überspringen Sie das Extrahieren 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 beträgt 0,6. Weitere Informationen finden Sie unter series_periods_detect. |
Gibt zurück
Ein dynamisches Array mit der prognostizierten Datenreihe.
Hinweis
- Das dynamische Array der ursprünglichen Eingabereihe sollte eine Reihe von Punkten enthalten, die prognostiziert werden sollen. Die Prognose erfolgt in der Regel mithilfe von Make-Series und Angeben der Endzeit in dem Bereich, der den Zeitrahmen für die Prognose enthält.
- Entweder Saisonalität oder Trend sollte aktiviert werden, andernfalls ist die Funktion redundant und gibt einfach eine Reihe zurück, die mit Nullen gefüllt ist.
Beispiel
Im folgenden Beispiel generieren wir eine Reihe von vier Wochen in stündlichem Getreide 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 Zeitraum von fünf Wochen.
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