series_fill_linear()
Dotyczy: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Interpoluje liniowo brakujące wartości w serii.
Przyjmuje wyrażenie zawierające dynamiczną tablicę liczbową jako dane wejściowe, wykonuje interpolację liniową dla wszystkich wystąpień missing_value_placeholder i zwraca wynikową tablicę. Jeśli początek i koniec tablicy zawierają missing_value_placeholder, zostanie zastąpiona najbliższą wartością inną niż missing_value_placeholder. Tę funkcję można wyłączyć. Jeśli cała tablica składa się z missing_value_placeholder, tablica jest wypełniona constant_value lub 0, jeśli nie zostanie określona.
Składnia
series_fill_linear(
series,
[ missing_value_placeholder [,
fill_edges [,
constant_value ]]])
Dowiedz się więcej na temat konwencji składni.
Parametry
Nazwisko | Type | Wymagania | opis |
---|---|---|---|
seria | dynamic |
✔️ | Tablica wartości liczbowych. |
missing_value_placeholder | skalar | Określa symbol zastępczy brakujących wartości. Wartość domyślna to double( null) . Wartość może być dowolnego typu, który zostanie przekonwertowany na rzeczywiste typy elementów. double (null), long (null) i int (null) mają takie samo znaczenie. |
|
fill_edges | bool |
Wskazuje, czy missing_value_placeholder na początku i na końcu tablicy powinny zostać zastąpione najbliższą wartością. true domyślnie. Jeśli ustawiono false wartość , missing_value_placeholder na początku i na końcu tablicy zostaną zachowane. |
|
constant_value | skalar | Dotyczy tylko tablic, które w całości składają się z wartości null . Ten parametr określa stałą wartość, z którą należy wypełnić serię. Wartość domyślna wynosi 0. Ustawienie tego parametru na double( wartość null) powoduje zachowanie wartości null . |
Zwraca
Interpolacja liniowa serii przy użyciu określonych parametrów. Jeśli seria zawiera tylko int
elementy lub long
elementy, interpolacja liniowa zwraca zaokrąglone wartości interpolowane, a nie dokładne.
Uwaga
- Jeśli tworzysz serię przy użyciu operatora make-series , określ wartość null jako wartość domyślną, aby używać funkcji interpolacji, takich jak
series_fill_linear()
później. Zobacz wyjaśnienie. - Jeśli missing_value_placeholder ma
double
wartość (null) lub pominięto, wynik może zawierać wartości null . Aby wypełnić te wartości null , użyj innych funkcji interpolacji. Tylko series_outliers() obsługuje wartości null w tablicach wejściowych. series_fill_linear()
zachowuje oryginalny typ elementów tablicy.
Przykład
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)
Wyjście
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,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] |