Share via


series_fill_linear()

以線性方式將數列中的遺漏值插補。

採用包含動態數值陣列的運算式做為輸入、對 missing_value_placeholder 的所有執行個體執行線性插補,並傳回產生的陣列。 如果陣列的開頭和結尾包含missing_value_placeholder,則會以missing_value_placeholder以外的最接近值取代。 可以關閉此功能。 如果整個陣列包含missing_value_placeholder,則陣列會填入constant_value,如果未指定則為0。

Syntax

series_fill_linear(系列,[ missing_value_placeholder [fill_edges [,,constant_value ]]])

深入瞭解 語法慣例

參數

名稱 類型 必要 Description
系列 dynamic ✔️ 數值的陣列。
missing_value_placeholder 純量 (scalar) 指定遺漏值的佔位元。 預設值為 double(null)。 值可以是任何將轉換成實際項目類型的類型。 double (null) , long (null) 和 int (null) 具有相同的意義。
fill_edges bool 指出陣列的開頭和結尾 missing_value_placeholder 是否應該取代為最接近的值。 預設為 true。 如果設定為 false,則會保留陣列開頭和結尾 missing_value_placeholder
constant_value 純量 (scalar) 僅與完全由 Null 值組成的數位相關。 此參數會指定要填滿數列的常數值。 預設值為 0。 將此參數設定為 double(null) 會保留 Null 值。

傳回

使用指定參數的 列線性插補。 如果 數列int 包含 或 long 專案,則線性插補會傳回四捨五入的插補值,而不是確切值。

注意

  • 如果您使用make-series運算子建立數列,請將 null 指定為預設值,以使用之後的series_fill_linear()插補函式。 請參閱 說明
  • 如果 missing_value_placeholderdouble (null) 或省略,則結果可能包含 Null 值。 若要填滿這些 null 值,請使用其他插補函式。 只有 series_outliers () 支援輸入陣列中的 Null 值。
  • series_fill_linear() 會保留數位專案的原始類型。

範例

let data = datatable(arr: dynamic)
    [
    dynamic([null, 111.0, null, 36.0, 41.0, null, null, 16.0, 61.0, 33.0, null, null]), // Array of double    
    dynamic([null, 111, null, 36, 41, null, null, 16, 61, 33, null, null]), // Similar array of int
    dynamic([null, null, null, null])                                                   // Array with missing values only
];
data
| project
    arr, 
    without_args = series_fill_linear(arr),
    with_edges = series_fill_linear(arr, double(null), true),
    wo_edges = series_fill_linear(arr, double(null), false),
    with_const = series_fill_linear(arr, double(null), true, 3.14159)  

輸出

arr without_args with_edges wo_edges with_const
[null,111.0,null,36.0,41.0,null,null,16.0,61.0,33.0,null,null] [111.0,111.0,73.5,36.0,41.0,32.667,24.333,16.0,61.0,33.0,33.0,33.0] [111.0,111.0,73.5,36.0,41.0,32.667,24.333,16.0,61.0,33.0,33.0,33.0] [null,111.0,73.5,36.0,41.0,32.667,24.333,16.0,61.0,33.0,null,null] [111.0,111.0,73.5,36.0,41.0,32.667,24.333,16.0,61.0,33.0,33.0,33.0]
[null,111,null,36,41,null,null,16,61,33,null,null] [111,111,73,36,41,32,24,16,61,33,33,33] [111,111,73,36,41,32,24,16,61,33,33,33] [null,111,73,36,41,32,24,16,61,33,null,null] [111,111,74,38, 41,32,24,16,61,33,33,33]
[null,null,null,null] [0.0,0.0,0.0,0.0] [0.0,0.0,0.0,0.0] [0.0,0.0,0.0,0.0] [3.14159,3.14159,3.14159,3.14159]