series_fit_2lines_dynamic()

Wendet zwei Segmente lineare Regression auf eine Reihe an und gibt ein dynamisches Objekt zurück.

Verwendet einen Ausdruck, der ein dynamisches numerisches Array als Eingabe enthält, und wendet zwei Segmente lineare Regression an, um Trendänderungen in einer Reihe zu identifizieren und zu quantifizieren. Die Funktion durchläuft die Reihenindizes. In jeder Iteration teilt sie die Reihe in zwei Teile auf und passt eine separate Zeile mit series_fit_line() oder series_fit_line_dynamic(). Die Funktion passt die Linien an jeden der beiden Teile an und berechnet den gesamten R-Quadratwert. Der beste Split ist der, der R-Quadrat maximiert. Die Funktion gibt ihre Parameter im dynamischen Wert mit folgendem Inhalt zurück:

  • rsquare: R-squared ist ein Standardmaß für die Passformqualität. Es ist eine Zahl im Bereich von [0-1], wobei 1 die bestmögliche Passform ist, und 0 bedeutet, dass die Daten ungeordnet sind und keiner Zeile entsprechen.
  • split_idx: Der Index des Bruchpunkts auf zwei Segmente (nullbasiert).
  • variance: Varianz der Eingabedaten.
  • rvariance: Restabweichung, die die Varianz zwischen den Eingabedatenwerten der angenäherten Werte (durch die beiden Zeilensegmente) darstellt.
  • line_fit: numerisches Array mit einer Reihe von Werten der am besten angepassten Linie. Die Reihenlänge entspricht der Länge des Eingabearrays. Sie wird für die Diagrammerstellung verwendet.
  • right.rsquare: r-Quadrat der Linie auf der rechten Seite des Splits, siehe series_fit_line() oder series_fit_line_dynamic().
  • right.slope: Steigung der rechten angenäherten Linie (der Form 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 Aufteilung.
  • right.rvariance: Restvarianz der Eingabedaten auf der rechten Seite der Aufteilung.
  • left.rsquare: r-Quadrat der Linie auf der linken Seite des Splits, siehe [series_fit_line()]. (series-fit-line-function.md) oder series_fit_line_dynamic().
  • left.slope: Steigung der linken angenäherten Linie (der Form y=ax+b).
  • left.interception: Abfangen der ungefähren linken Linie (der Form y=ax+b).
  • left.variance: Varianz der Eingabedaten auf der linken Seite der Aufteilung.
  • left.rvariance: Restvarianz der Eingabedaten auf der linken Seite der Aufteilung.

Dieser Operator ähnelt series_fit_2lines. Im Gegensatz dazu series-fit-2linesgibt es einen dynamischen Beutel zurück.

Syntax

series_fit_2lines_dynamic(Serie)

Erfahren Sie mehr über Syntaxkonventionen.

Parameter

Name Typ Erforderlich BESCHREIBUNG
Serie dynamic ✔️ Ein Array numerischer Werte.

Tipp

Die bequemste Möglichkeit, diese Funktion zu verwenden, besteht darin, sie auf die Ergebnisse des Make-Series-Operators anzuwenden.

Beispiel

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
    LineFit=series_fit_line_dynamic(y).line_fit,
    LineFit2=series_fit_2lines_dynamic(y).line_fit
| project id, x, y, LineFit, LineFit2
| render timechart

Serie passen 2 Zeilen.