series_fit_2lines()
適用於:✅Microsoft網狀架構✅Azure 數據✅總管 Azure 監視器✅Microsoft Sentinel
在數列上套用兩個分段線性回歸,並傳回多個數據行。
採用包含動態數值陣列的表達式做為輸入,並套用兩個 分段線性回歸 ,以識別和量化數列中的趨勢變更。 函式會反覆運算數列索引。 在每個反覆專案中,函式會將數列分割成兩個部分、將個別的線條(使用 series_fit_line()套用至每個部分,並計算總 r 平方。 最好的分割是最大化 r 平方的分割:函式會傳回其參數:
參數 | 描述 |
---|---|
rsquare |
R 平方 是符合質量的標準量值。 這是範圍 [0-1] 中的數位,其中 1 - 是最佳大小,0 表示數據未排序,且不符合任何行。 |
split_idx |
斷點至兩個區段的索引(以零起始)。 |
variance |
輸入數據的變數。 |
rvariance |
剩餘變異數,這是輸入數據值之間的變異數近似值(由兩條線段)。 |
line_fit |
數值陣列,包含最適配線條的一系列值。 數列長度等於輸入數位的長度。 它主要用於圖表。 |
right_rsquare |
分割右側線條的 R 平方,請參閱 series_fit_line()。 |
right_slope |
右近似線的斜率(格式為 y=ax+b)。 |
right_interception |
大約左線的截距 (b from y=ax+b) 。 |
right_variance |
分割右側輸入數據的變異數。 |
right_rvariance |
分割右側輸入數據的剩餘變異數。 |
left_rsquare |
分割左側線條的 R 平方,請參閱 series_fit_line()。 |
left_slope |
左近似線的斜率(格式為 y=ax+b)。 |
left_interception |
大約左線的截距(格式為 y=ax+b)。 |
left_variance |
分割左側輸入數據的變異數。 |
left_rvariance |
分割左邊輸入數據的剩餘變異數。 |
注意
此函式會傳回多個數據行,因此無法做為另一個函式的自變數。
語法
專案 series_fit_2lines(
系列)
深入瞭解 語法慣例。
- 會傳回上述所有具有下列名稱的數據行:series_fit_2lines_x_rsquare、series_fit_2lines_x_split_idx等。
project (rs, si, v)=series_fit_2lines(
series)
- 會傳回下列數據行:rs (r-square)、si (分割索引)、v(變異數)和其餘數據行看起來會像series_fit_2lines_x_rvariance、series_fit_2lines_x_line_fit等。
extend (rs, si, v)=series_fit_2lines(
series)
- 只會傳回:rs (r-square)、si (分割索引) 和 v (變異數)。
參數
姓名 | 類型 | 必要 | 描述 |
---|---|---|---|
系列 | dynamic |
✔️ | 數值的陣列。 |
提示
使用此函式最方便的方式是將它套用至make-series運算符的結果。
範例
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