series_fit_2lines()
在數列上套用兩個分段線性回歸,並傳回多個數據行。
接受包含動態數值陣列的表達式做為輸入,並套用 兩個分段線性回歸 ,以識別並量化數列中的趨勢變更。 函式會逐一查看數列索引。 在每個反覆項目中,函式會將序列分割為 2 個部分,將單獨的線適配 (using 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 |
左側近似線的截距 (取自 y=ax+b 的 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 (split index) 和 v (variance),其餘部分會看起來像 series_fit_2lines_x_rvariance、series_fit_2lines_x_line_fit 等。
extend (rs, si, v) =series_fit_2lines(
series)
- 只會傳回︰rs (r-square)、si (split index) 和 v (variance)。
參數
名稱 | 類型 | 必要 | Description |
---|---|---|---|
系列 | 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
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應