Freigeben über


series_fit_2lines()

Gilt für: ✅Microsoft Fabric✅Azure Data ExplorerAzure MonitorMicrosoft Sentinel

Wendet eine zwei segmentierte lineare Regression auf eine Datenreihe an, wobei mehrere Spalten zurückgegeben werden.

Verwendet einen Ausdruck, der dynamische numerische Arrays als Eingabe enthält, und wendet eine zwei segmentierte lineare Regression an, um eine Trendänderung in einer Datenreihe zu identifizieren und zu quantifizieren. Die Funktion durchläuft die Reihenindizes. In jeder Iteration teilt die Funktion die Datenreihe auf zwei Teile, passt zu einer separaten Linie (mit series_fit_line()) zu jedem Teil und berechnet das Gesamt-R-Quadrat. Die beste Teilung ist diejenige, die „r-square“ maximiert hat. Die Funktion gibt die dazugehörigen Parameter zurück:

Parameter Beschreibung
rsquare R-Quadrat ist standardmaßstabe für die Passqualität. Es handelt sich um eine Zahl im Bereich [0-1], wobei 1 - die bestmögliche Übereinstimmung ist, und 0 bedeutet, dass die Daten ungeordnet sind und keine Linie passen.
split_idx Der Index des Bruchpunkts auf zwei Segmente (nullbasiert).
variance Varianz der Eingabedaten.
rvariance Restabweichung, die die Varianz zwischen den Eingabedatenwerten ist, die angenäherten Werte (durch die beiden Liniensegmente).
line_fit Numerisches Array mit einer Reihe von Werten der am besten angebrachten Linie. Die Reihenlänge entspricht der Länge des Eingabearrays. Es wird hauptsächlich für die Diagrammerstellung verwendet.
right_rsquare R-Quadrat der Linie auf der rechten Seite der Teilung, siehe series_fit_line().
right_slope Steigung der rechten angenäherten Linie (des Formulars y=ax+b).
right_interception Abfangen der ungefähren linken Linie (b von y=ax+b).
right_variance Varianz der Eingabedaten auf der rechten Seite der Teilung.
right_rvariance Restabweichung der Eingabedaten auf der rechten Seite der Teilung.
left_rsquare R-Quadrat der Linie auf der linken Seite der Teilung, siehe series_fit_line().
left_slope Steigung der linken angenäherten Linie (des Formulars y=ax+b).
left_interception Abfangen der ungefähren linken Linie (des Formulars y=ax+b).
left_variance Varianz der Eingabedaten auf der linken Seite der Teilung.
left_rvariance Restabweichung der Eingabedaten auf der linken Seite der Teilung.

Hinweis

Diese Funktion gibt mehrere Spalten zurück, sodass sie nicht als Argument für eine andere Funktion verwendet werden können.

Syntax

Projektreihe series_fit_2lines()

Erfahren Sie mehr über Syntaxkonventionen.

  • Gibt alle oben genannten Spalten mit den folgenden Namen zurück: series_fit_2lines_x_rsquare, series_fit_2lines_x_split_idx usw.

Projekt (rs, si, v)=series_fit_2lines(serie)

  • Gibt die folgenden Spalten zurück: rs (r-square), si (split index), v (varianz) und der Rest sieht wie series_fit_2lines_x_rvariance, series_fit_2lines_x_line_fit und etc. aus.

extend (rs, si, v)=series_fit_2lines(series)

  • Gibt nur Folgendes zurück: rs (r-square), si (split index) und v (variance).

Parameter

Name Type Erforderlich Beschreibung
Reihe dynamic ✔️ Ein Array numerischer Werte.

Tipp

Die bequemste Methode der Verwendung dieser Funktion ist die Anwendung auf die Ergebnisse des Make-Series-Operators .

Beispiele

print
    id=' ',
    x=range(bin(now(), 1h) - 11h, bin(now(), 1h), 1h),
    y=dynamic([1, 2.2, 2.5, 4.7, 5.0, 12, 10.3, 10.3, 9, 8.3, 6.2])
| extend
    (Slope, Interception, RSquare, Variance, RVariance, LineFit)=series_fit_line(y),
    (RSquare2, SplitIdx, Variance2, RVariance2, LineFit2)=series_fit_2lines(y)
| project id, x, y, LineFit, LineFit2
| render timechart

Reihen passen 2 Linien an.