共用方式為


series_fill_linear()

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

接受包含動態數值陣列的表達式做為輸入、針對missing_value_placeholder的所有實例執行線性插補,並傳回產生的陣列。 如果陣列的開頭和結尾包含missing_value_placeholder,則會將其取代為missing_value_placeholder以外的最接近值。 此功能可以關閉。 如果整個陣列是由missing_value_placeholder所組成,則陣列會填入constant_value,如果未指定則為0。

語法

series_fill_linear(series [ missing_value_placeholder [fill_edges [,, constant_value ]] ],)

深入瞭解 語法慣例

參數

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

傳回

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

注意

  • 如果您使用make-series運算子建立數列,請將 null 指定為預設值,以使用之後的series_fill_linear()插補函數。 請參閱 說明
  • 如果 missing_value_placeholderdoublenull),或省略,則結果可能包含 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]