series_fit_2lines()
Gilt für: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft 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